Choosing between various types of contracts in software project management is everything in engagement with the offshore software development company. Depending on the selected IT outsourcing models, you can expect some variations in the payment terms, work progress reporting, your ability to manage the team directly, etc.
First of all, we need to define what are the usual suspects when talking about the various offshore development models and IT contract types.
List of the Content
- Time and material model
- Fixed-price contracts
- Dedicated development teams or resources
- Offshore development center
Saying that each of these IT outsourcing models variation has its own pros and cons would be a whopping cliche. Those contracts are simply designed for different types of engagements. Each one or two of them fits some specific selection criteria. There are no trade-offs when you need to come up with the right choice of IT outsourcing models. Only the wrong and the right choice. In general, software development outsourcing models are not packages of the same service. You can get some perks by paying extra but still get the same base offering. Make the wrong choice, and the whole collaboration with the services provider will be ruined, and you’ll need to start from scratch.
Lucky for everyone, it is pretty simple to make a conscious choice if you see the whole picture. This article is going to help you with that. Below we are going to explore frequently used types of outsourcing contracts and the typical projects they fit in. Let’s start with IT outsourcing models that are used for one-time engagements, where the end of the project can be determined in one way or another.
IT OUTSOURCING MODELS: TIME AND MATERIAL PRICING METHOD
One of the oldest and probably, the most simple to explain and understand types among IT outsourcing models. The time and material model is used when you have the final goal. This objective might be pretty extensive, like “create and launch software product”.
In a nutshell, a fixed-price outsourcing contract means that you define the scope of work either with or without the help of the software development company. After that, the provider gradually builds the required solution.
The project completes once the customer accepts the final results of the work. The endpoint can be a demo or launch of the software for the end users. In most cases, such types of outsourcing contracts are not expected to extend. The extension or support of the delivered solution is the subject of another agreement.
Most of the time and material model definitions say that you need to have a very well-defined development route to start doing this type of outsourcing model. If you don’t want to get in trouble, of course. That is not 100% true. You must have heard the news about the startups that had only some administrative staff like CEO and CFO and enough funding. Yet they created and launched popular products with the help of the outsourcing development services provider. How did they manage to do that?
First goes the product specification requirements outlining, planning of the milestones, doing the paperwork, etc. Responsible offshore software development services providers, including Existek, are guiding their clients through these stages before proceeding to the actual development process. As an example, you may have a look at the brief description of this sequence on our How We Work Page for example. It is a good business practice to give a consultation before the launch.
It won’t be correct to talk about the time and materials contract advantages and disadvantages. There are some points that are listed below to help you decide if this is your thing:
- This type of outsourcing contract is the best option when the global goal of the project is foreseen eg. the public release of the mobile app.
- At the project planning stage, the System Requirements Specification Document is created. It is a must in the time and material contracts. This is the document where all the specifications and functionality are carefully described, as well as the cost, development timeline, each milestone, and its deliverables. It serves as a guide for the engineers and an ultimate argument in any disputes with the development provider. You can expect the development and creation of this document as a part of the provider’s offering.
- Time and material contracts are not paid upfront nor after the work is completed. As a rule, the development is divided into milestones. Each milestone is paid 50% upfront and 50% after the delivery of the development assets described as the goal for that milestone. Man-hours for each milestone are preliminary calculated and included in the description.
The time and material pricing method is usually calculated in man-hours and then rendered in currencies depending on the cost of each specialist’s working hour.
This article about the man-hours calculation for software projects will help a non-technical person to understand the math behind this process, determine which approach has been used by the vendor, and validate the estimate.
- A short time and material engagement (3-6 months) is the ideal way to try collaboration before entering any long-term agreements. After you get an understanding of the provider’s work manner, you can go for the fixed-price contract. It would have fewer details about the resources needed to complete each task to save time in the planning stage.
- You may have heard the opinion that the time and material model or the fixed-price contracts protect the customer from any budget fluctuation. It is a common mistake. According to the studies, in 2017, the IT industry experienced a 27% budget overrun on average. It is important to know that poor planning may completely eliminate one of the key advantages of the time and material model and force you to adjust the budget. A good System Requirements Specification Document is obligatory if the true “time and material” is needed.
- The standard time and material contract includes the warranty period, 30 days, as a rule. It covers fixing all the functionality flaws and bugs that have been discovered in the deliverables during that period.
IT OUTSOURCING MODELS: FIXED-PRICE CONTRACT
The fixed-price contract is one of the IT outsourcing models you can use in project-based engagements. It means that the payment does not depend on how much time and resources the vendor will spend to complete the project.
What differentiates fixed-price contracts from the time and material outsourcing model is that the scope of work and the resources needed to complete the objective are not disclosed to the customer. The time & material model saves the time you’d spend on planning. The preparation stage is completely performed on the provider’s side, which comes at the cost of transparency and awareness.
Like with the time and material outsourcing model, there are no pros and cons of the fixed-price contracts that can be defined for sure.
The time and material model puts all the risks on the service provider. On the other hand, the service provider is motivated to finish the project for a fixed time and money. For a contractor, the temptation to sacrifice quality to meet the limits by any means is very high. We strongly recommend you work on the time and material or team-based models unless you have 100% confidence in the contractor.
Almost all the facts mentioned about the time and material model are true for fixed-cost outsourcing software projects. The final deliverables should be extremely well-defined and detailed in the specification requirements documentation. The project duration should not exceed 6 months. Because it is very hard to determine how long would it take to complete something in software development precisely. At least unless the actual work has begun, the needed resources and budget are always subject to fluctuation up to 20%.
Here are other business cases when fixed-price contracts can be a good fit:
- Clearly defined project scope. A fixed-price contract is most appropriate when the project scope is clearly defined and can be outlined in a contract. This ensures that both the client and the vendor understand the project requirements, timelines, and costs, which can lead to better budgeting and project management.
- Limited resources: A fixed-price contract can be a good option for clients with limited resources, as it allows them to outsource the development of a project without investing in additional staff or equipment.
- Outsourcing specific tasks. A fixed-price contract can be used when a client wants to outsource specific tasks within a larger project, such as testing or maintenance.
- One-time projects. A fixed-price contract can be used for one-time projects that do not require ongoing maintenance or support. This can include projects such as developing a standalone software application or some solution that does not require regular updates.
- Repeatable projects. This contract type can be used for repeatable projects, such as developing a software product that can be customized for different clients. This can allow the vendor to provide a set price for the project and offer discounts for repeat clients.
- Competitive bidding. A fixed-price contract can be used in a competitive bidding process, where multiple vendors compete to provide the best solution at the lowest cost. This can be beneficial for clients who are looking for the most cost-effective solution for their project.
IT OUTSOURCING CONTRACTS: DEDICATED DEVELOPMENT TEAM
Companies that need continuous development prefer to use dedicated resources contracts. This gives them the ability to drive the development process directly. Besides that, they can plan the workload for shorter periods of time, like weeks or a couple of months. Same as they would normally do with the in-house staff. The companies are hiring external teams to do routine work instead of hiring contractors to complete global tasks. In the next section, we explore those types of contracts in software project management.
The dedicated development team is among the ideal outsourcing pricing models in IT for technology companies and ISVs. It allows for quickly extending their development capabilities with the highly-qualified offshore developers and staying in control of those engineers, likewise the internal staff. This type of contract in software project management is not only about actual developers. Such a team can also include designers, UX/ UI specialists, business analysts, project managers, quality assurance engineers, etc. Basically, any specialists you’re going to need to launch, extend, and support almost any type of software.
The fixed-price contracts and dedicated development team model differentiate as types of outsourcing contracts by two main criteria: the level of the client’s engagement in the team managing process and the outsourcing pricing model.
In a dedicated team outsourcing model, the client can manage each of the specialists provided by the contractor directly. In a nutshell, it is very similar to having your own remote employees. Employer’s staff have access to the communication channel with each team member, issue tracking system, project management tools, daily or weekly status meeting, etc. The team can be managed both onsite and offsite.
How to approach outsourcing?
At Existek, we have mastered this outsourcing collaboration type as it is one of our core competence. We have been providing dedicated development teams of various sizes for enterprises, ISVs, and technology companies for more than 10 years. During this time, we have created an extensive collection of materials to help you better understand and use this model. Check our guides:
Onsite management means that there is a PM specialist provided by the contractor and reports to the responsible person in a client’s organization. On the opposite, in the offsite model, the PM is assigned from the customer’s side. He or she directly manages every aspect of everyday tasks and activities.
Now about outsourcing pricing models in the dedicated development team services. There are three options: cost per resource, management fee, and hourly rate.
Cost per resource – the fixed price that the client needs to pay to the outsourcing company. Calculated for the assigned developer on a monthly basis. It means that the engineer works on a single project and will be always ready to accept new tasks from the client and report to them.
Management fee – the variation of the cost per resource model but more transparent. The client is aware of the developer’s actual salary and pays a so-called “management fee” on top. It covers the administrative, housing, and social expenses of the contractor, plus the remuneration. In this model, the client takes part in the screening, selecting, and choosing people for the team from the list of candidates provided by the contractor. This transparency gives a choice between both skills of the potential employee and his desired salary. A client can potentially cut down some costs by accepting candidates with the best balance between cost and expertise.
Hourly rate – another way to go with the dedicated development team outsourcing model. It helps to understand the cost of each working hour by the particular developer in the team. It is a common practice to convert the average working month to 160 working hours. The key difference between the cost-per-resource model and the hourly rate approach is that the full-working month would be 20% more expensive on average. The yearly price would be the same as in the cost per resource or management fee outsourcing contracts. This is done to distinguish those two models. In the case of the hourly rates, the client does not pay for the time when his virtual employee is sick or on his vacation. In the management fee on the top model, the fixed price is paid regardless of the developer’s availability because he is still assigned to that project. Of course, if the team loses somebody irreplaceable for the project or the engineer is not available for an extended period of time (4 weeks), the client can demand payment cancelation or the developer’s replacement.
Like in the case of the fixed-price outsourcing model, it would be a mistake to speak about the advantages and disadvantages of the dedicated development team. It fits some business cases and doesn’t fit others. Here are some key points worth mentioning about this IT outsourcing model:
- Dedicated resources can start with only one person and should not necessarily be a developer. This might be a QA, designer, business analyst, etc.
- Good vendors offer the client to be a part of the hiring process. This includes participation in the interview, reviewing the results of the technical test, and making a final decision between the candidates with various technical skills and costs.
- Dedicated teams are the best option for long-term support, maintenance, and gradual work on software products. The main reason for this is that with time the team is starting to become stakeholders of the product and functions as internal staff. Potentially this type of outsourcing contract can last for dozens of years.
- Scalability and flexibility are what make dedicated teams the perfect choice when the scope of work is hard to estimate. If you deal with the internal staff, it is always hard to fire someone because you don’t need those resources anymore. Moreover, this can cause significant expenses. With this outsourcing contract type, you can decrease the size of the team and don’t afraid of any reputation loss, dismissal wages, etc. Once you feel that there is not enough technical staff for the project – you can easily extend the team again.
- Despite the commonly held opinion that companies use outsourcing software projects for the purpose of cutting costs, that is not exactly the case. It is quite hard to get a team of 5 engineers in Western Europe or the US in a couple of months and put it on track. Applying IT outsourcing models solves this issue completely. For example, Nordic countries are experiencing a strong lack of qualified developers for the past couple of years. Countries with a mature IT outsourcing industry, like Ukraine, completely solve this issue for them.
- Dedicated development team IT outsourcing models help companies to hire skilled and established development teams in an extremely short time. Besides that, the recruitment cost, in this case, doesn’t exist, while hiring new in-house staff can cost two actual developers wages of HR costs.
IT OUTSOURCING MODELS: DEDICATED DEVELOPMENT CENTER
The dedicated development center or the offshore development center is basically the same dedicated team outsourcing model with some global differences. Enterprises use this model in case they don’t have an internal IT department capable of the full software development cycle. Unlike the dedicated team model, where external specialists are used rather as an augmentation to the in-house IT team, dedicated centers are used to outsource the whole IT processes on the service provider’s premise.
With this approach, the contractor functions more on the administrative side and is responsible for staffing, housing, supply, and HR management. Cost per resource or the management fee is the commonly used option among the software development pricing models mentioned in the previous section. The hourly rate would be extremely cost-inefficient for the customer who needs the offshore development center. The rest of the dedicated development team’s perks, such as zero hiring costs and access to a deeper pool of talent, are also valid for the offshore development center.
This IT outsourcing model can be a good fit for the following business cases:
- Reduced overhead costs. When outsourcing to a dedicated development center, companies do not need to worry about overhead costs such as office space, equipment, and benefits for the development team.
- Access to the latest technologies. Dedicated development centers are often equipped with the latest tools and technologies, meaning companies can benefit from them without investing in them.
- Continuity and knowledge retention: DDCs can provide continuity of development and knowledge retention, even if a specific developer leaves the team, as the team will have enough resources to cover that role.
- Time zone advantage. A dedicated development center located in a different time zone can provide round-the-clock work, allowing for faster development and faster time-to-market.
- Managing peak workloads: Dedicated development centers can help companies manage peak workloads or spikes in development needs, allowing them to focus on their core business.
- The dedicated development center can help companies develop a proof-of-concept (PoC) quickly and cost-effectively, allowing them to test and validate their ideas before committing to full-scale development.
- Access to skilled professionals: A dedicated development center allows a company to access a wider pool of skilled professionals with specific expertise and experience rather than relying on in-house resources.
Would you like to know more about the outsourcing models?
In the article about software outsourcing, we’ve covered the topics of outsourcing models, the advantages of this approach, and the best regions to find developers.
The types of contracts in software project management are pretty flexible. There is no one size fits all solution, but everybody can find something that will work well with a project of a particular scale and different goals.
The main selection criteria will be the following:
- The size of the team
- Project duration and the budget size
- Level of control you require over the team
- Technologies and the overall project complexity
After years in the outsourcing services market, Existek has chosen the time and material model for the projects with a clear goal and dedicated development model for the projects where long-term day-to-day collaboration with the client is a must. We believe that those two approaches give our partners the best value out of outsourcing software projects. We hope that this article will help you to decide which of the IT contract types is the best for you.
How to analyze requirements based on your project needs?
A good service provider will always analyze your requirements during the very first conversation and give advice on which IT outsourcing models will fit your particular business case. Or you can leave it to the experts, and Existek’s team will gladly provide you with a free consultation.
Why does IT outsourcing gain in popularity?
IT outsourcing gained popularity for several reasons, including cost savings, access to specialized skills and expertise, and the ability to focus on core business activities. Outsourcing IT services allows companies to reduce labor costs and operational expenses and gain access to a wider pool of talent and specialized skills. It can also help companies to stay competitive in today's rapidly changing business environment by providing access to new technologies, processes, and best practices.
What are the commonly applied types of IT outsourcing models?
Companies can choose among several categories and types depending on the business needs and requirements.
Per-project-based outsourcing: T&M model, fixed-price contract
Team-based outsourcing: dedicated development team, DDC
How to choose the right IT outsourcing model?
At first, it might seem a challenging task to find a suitable outsourcing model. However, it won't be so hard as long as the company clearly understands available models and has defined its business needs. It considerably helps to simplify the choice and reach a good decision.
What is the best IT outsourcing model?
There is no one size fits all solution, as different types of IT outsourcing models fit different business scenarios. The applied models vary from project to project, whereas the main goal remains productive and smooth collaboration to reach the outlined goals.