How to choose a cooperation model suitable for a software development project: Experience-based tips

The dynamic growth of the IT sector has led to significant interest in improving the effectiveness of software development projects. At the same time, a significant number of projects are not successful enough. By some estimates, only 29% of IT projects are completely successful, and 19% are complete failures. There are studies that show that 17% of large IT projects are done so poorly that they jeopardized the very existence of the company. According to the same source, 66% of software projects experienced cost overruns, 33% had schedule overruns, and 17% had benefits shortfalls. Clearly, some of these failures are associated with the unsuccessful organization and interaction of the project participants.

Most successful IT products are a combination of ideas and experience from a customer and a software developer. In order for both sides of the project to focus on co-creation and technology, it is important to correctly define the cooperation model to be used. Such a model establishes the organizational and financial conditions for the project, its duration, the possibility of making changes and the distribution of responsibilities and risks. Partners must also agree on principles of pricing, working hours, resource management, information exchange and procedures for solving unforeseen situations. Below, the main cooperation models and their characteristics will be analysed, as well as criteria and an algorithm for choosing the most appropriate model to correspond to a specific software development project.

Primary cooperation models used for IT cooperation

Cooperation models differ in their distribution of responsibilities, risks, opportunities, and advantages associated with the project between the customer and the contractor. Since the focus is on project activities, it is advisable to consider the classification of cooperation models in terms of project management (PM).

Classically in PM, depending on the type of development contracts, three cooperation models can be distinguished:

  1. Fixed Price (FP)
  2. Time and Material (T&M)
  3. Cost Reimbursable (CR)

The use of an FP model means that the scope and budget of the project are precisely determined in advance.

In the T&M cooperation model, the customer accepts and pays for all working hours and material costs, regardless of the time it takes to complete the project.

Under the terms of a CR contract, the contractor is entitled to compensation for all reasonable costs associated with the development of a product, as well as a certain fee as profit for their work.

Each of the main types of cooperation model can be divided into several more categories that are often encountered in practice. Optional and derivative forms of interaction arise when parties attempt to anticipate the specifics of the work plan or establish additional incentives for the project team. This can be seen in the example of CR forms of collaboration:

  • Cost Plus Award Fee (CPAF): Costs are reimbursed, and the incentive is a potential bonus that is predetermined but dependent on performance.
  • Cost Plus Fixed Fee (CPFF): In addition to the reimbursement of expenses, the bonus reward is set as a fixed amount and is included in the actual contract value.
  • Cost Plus Incentive Fee (CPIF): In this case, the additional fee is dependent on productivity and cost savings.

As mentioned above, the classification of cooperation models in PM is based on different types of contracts. However, cooperation includes many components aside from legalities. Organisational, informational, technological and human factors are also important, as well as the specifics of software development.

Depending on project duration and the level of client involvement in the development process, it seems reasonable to divide the cooperation models into:

  • Project-based models include FP, T&M.
  • A resource-based model, Dedicated Team.

Let us consider each of these three cooperation models one by one.

Fixed Price (FP)

The FP method of organizing cooperation between the customer and the software developer assumes a predetermined scope of the project, a set deadline, and an agreed-upon price. The advantages of this way of organizing work include a quick start, fixed budget and duration, no idle time and high project manageability.

Theoretically, the following varieties of this model can be distinguished:

  • Firm Fixed Price (FFP): The cost of the work remains unchanged and does not depend on the actual hours of the contractor.
  • Fixed Price Incentive Fee (FPIF): In addition to a fixed payment, additional incentives are provided for the contractor – a bonus for reaching agreed-upon indicators (for example, terms, time or quality).
  • Fixed Price Award Fee (FPAF): The possible reward is determined in advance.
  • Fixed Price Economic Price Adjustment (FPEPA): A contract with a fixed definition of conditions under which a price adjustment is possible.

The following customer memo is devoted to the features of the model.

Fixed Price model customer Memo

There are several important points to keep in mind when applying an FP model to avoid common pitfalls. Working with this model seems straightforward, but it requires a certain amount of experience and careful preparation.

The start of work using this model is relatively quick. However, pre-project preparation can be lengthy, requiring drawing up a detailed contract with job specifications. This could even be comparable in duration to the project itself or may even exceed it. Additionally, in the pre-project stage, the customer cannot yet use the experience and templates of the contractor. Responsibility for the risks of imperfections or poor quality of specification rests entirely on the client.

In a short-term project with an FP model, the customer is sufficiently distanced from the process. If something goes wrong in development, the client may not have time to react to unforeseen failures and must assess them after the completion of the project. When wrapping up the project, it could turn out that the specifications have been complied with, but the resulting software product does not suit the customer, does not arouse interest among users or has little prospect of being in demand.

This model also does not provide the ability to quickly restart development. The client must again go through the stages of business analysis, specification, negotiating and signing a new contract. Thus, the apparent speed of project implementation could turn into a lengthening of time for obtaining the planned software. It is possible that a faster-developed competitor`s product could occupy the chosen market niche.

Other cooperation models could be more suitable, making it possible to quickly make changes and fix bugs during the project.

Time & Materials (Time & Expenses, T&M)

When working within this model, the development cost is determined based on the hours worked by the project team and other costs associated with the project. At the beginning of cooperation, the project parties agree on an hourly rate and set goals. Payments are typically made monthly, calculated based on the agreed-upon hourly rate and the actual number of hours worked per month. The T&M model assumes a high level of client involvement in the project and the absence of detailed specifications.

The strengths of this form of cooperation, which is most suitable for projects up to 6 months in duration, include quick start of 2-4 weeks, a flexible plan and work schedule, and the possibility of changes. At the same time, the customer who ordered development according to the T&M model should be prepared for the fact that the cost and timing of work cannot be exactly known in advance but can only be approximately estimated. Additionally, there may be staff turnover among developers, and the level of knowledge retention in the project may be low. However, with this method of organizing contractual relations, the client can turn to a trusted IT solution provider with a newly emerged idea and immediately start joint work.

A brief description of the model is displayed in the customer memo.

Time & Materials model customer Memo

T&M model in practice can be clearly visible in the working process of improving of the property management system (PMS) Visbook for HoReCa businesses. Considering that PMS has over 20 years of history, the SSA Group Desktop Team’s initial task was to improve existing functionality. However, the scope of the project was constantly transformed and refined by adding development and integration tasks.

Working in a sufficiently flexible T&M model made it possible to develop and implement a frontend for the booking engine, advanced product search, enhance PMS functionality and integrate it with up-to-date online payment and access control systems. The team continues to constantly improve and upgrade the system to keep it up to date. The project is currently moving to an asynchronous architecture to improve the scalability of VisBook’s PMS.

In this project, it was possible to use the strengths of the T&M model, including changes in the scope of the project, flexible planning and scheduling, and the ability to involve an additional number of contractor specialists (e.g., designers and developers) without lengthy preliminary negotiations or signing additional contracts.

Dedicated Team (DT)

Using a DT model, a team of experts is created to focus exclusively on the development of one software project. Monthly payment by the client consists of the salaries of all members of the project team, as well as administrative fees. With a properly structured process of building a dedicated team, the client and the contractor jointly select specialists, and the cost structure is completely transparent.

The work of such a team on a project ensures the accumulation and retention of knowledge, a high level of scalability and reliability, and dynamic progress through dedicated resources. Team members work full time, are constantly available for communication and are well-versed in the specifics of the business model and the corporate culture of the company for which the project is being implemented.

Customers have full control over the team’s working time but can also regulate their involvement in the process. As in the case of the FP model, the monthly payment is predictable, but the main difficulty of management is to optimize the development time. The same applies to avoiding the idle time, which also has to be paid. At the same time, the client can adjust the intensity of work in the project. For example, in the event that some result needs to be achieved as soon as possible, an agreement can be reached on paid overtime for the project team.

The dedicated team model allows development to start with incompletely defined requirements. The project scope is determined throughout the progress by the joint efforts of the customer and the contractor. Given the long-term nature of projects that last over 6 months, the members of the dedicated team are able to achieve domain expertise and the necessary niche specialization.

The DT memo below demonstrates the basic features of the model.

Dedicated Team model customer Memo

The dedicated team model is flexible. For example, a customer can combine the efforts of their own staff and a dedicated team of the contractor to complete a project, which mutually complements both parties. With such a project management scheme, the client retains the workplaces of full-time specialists while simultaneously gaining constant access to the expertise of the representatives of the IT services and solution provider.

An example of this model used in a project is an AI-driven leadership tool for automating corporate productivity. An effective interaction was developed between two parts of the project team:

  • On the customer side: Product owner, Data Scientists, Data Engineer, and UI / UX designer, focused exclusively on the development of algorithms based on artificial intelligence.
  • On the contractor side: Project Manager, frontend and backend developers, DevOps and QA Engineers who are responsible for all other elements of development and testing, as well as for the project infrastructure.

Consistency of the team composition and close communication of all participants ensures the coherence of work, retention of acquired knowledge and experience and sustainable development of the project.

Support Package

When talking about cooperation in the IT field, one cannot ignore post-project maintenance. All major players in the software market strive to maintain and improve their products, help users, and develop customer relationships even after the product is completed.

Oftentimes, if the developed software is widely popular among users, then its support also requires a carefully thought-out interaction with the customer. One example project implemented by the IT services and solution provider, SSA Group, in the legal services domain is the US Patents Search Portal, which is designed for automated search, analysis, classification and tracking of US patents for intellectual property law practitioners.

This solution speeds up and simplifies the search for US patents-related data significantly. More than 400 companies regularly use the portal, which houses more than 1 million documents. Service areas include web crawling and PDF parsing, optical character recognition, data mining, database administration and frontend for a business-to-business portal. The support team includes developers, a QA Engineer and a Data Analyst.

In terms of Technical support, there is no such variety of models as in development. As a rule, everything is determined by the amount and cost of the working time allocated by the client. Additionally, the intensity of information exchange and the speed of response to client requests are very important for successful service. These issues are regulated within the framework of the cooperation model. For example, SSA Group considers the individual needs of client, giving them the opportunity to choose between two support packages: Regular or Premium. Thus, the customer receives the most suitable turnaround time, means of communication with experts and guaranteed time slots of the service team per month.

Tips for choosing a cooperation model

Choosing a cooperation model will depend on the type, duration and specifics of the project. It is important to model future work on a particular way of organizing interaction. Comparison of the primary cooperation models can elucidate several patterns.

The resource-based DT model ensures effective long-term partnerships, while the project-based cooperation models FP and T&M are better suited for short-term or pilot projects.

The FP model is suitable for small, short-term projects but does not provide the necessary flexibility and willingness to allow changes. The use of FP is clearly appropriate, for example, for a pilot project. After evaluating the results a pilot stage, clients can decide on the feasibility of continuing the project and defining a different cooperation model to complete it.

The T&M model performs well in conditions of uncertainty, such as if the features of the product are not fully thought out. In this form of work organization, development progress can be achieved, but it is difficult to control the development time frame. The risks of loss of knowledge and know-how gained during the implementation of the project are also high. T&M works well with the tasks of medium and long-term projects, especially considering the variable workload and the amount of working time.

The Cooperation Model Selection process can be schematically shown as follows.

Cooperation Model Selection

Where should clients start when choosing a cooperation model for a software development project? First, the duration of the project, the availability of a detailed specification and the possibility of making changes to it in the course of work all play an important role.

If the project is short-term – up to 2 months – then, most likely, it would not be beneficial to spend another 1-2 months on the formation and organization of a dedicated team. Thus, at this stage a choice should be made between two options: FP or T&M. To substantiate this choice, two questions should be answered: ‘Is the specification ready?’ and ‘Are there any changes expected?’ If the customer knows the project scope – in particular, the list and details of project requirements – and does not plan to make changes to them, an FP model can be used. Lack of specifications, or a high probability of changes to the existing specifications, are arguments in favour of working with the T&M method.

In a situation where the duration of the work is planned to take 2 to 6 months, the T&M model may be most suitable. For such a project, it is hardly realistic to create a dedicated team or to comply with the specificity and rigidity of applying a fixed price.

If the project scope involves the duration of work for a period of more than 6 months, then the client should choose between the DT and T&M models. The answer to the question, ‘Is this project full time?’ will make this choice easier. If the client agrees to have the project team work on a part-time basis, then T&M terms are suitable for this case. However, if the client wants the developers to focus exclusively on their project, a dedicated team should be created.

Below, the main criteria for comparing cooperation models are presented in one table.

Comparison of Cooperation Models

When initiating a project, one should also consider the cost/retention ratio, which is visually shown below.

Cooperation models compared

It should not be forgotten that the relationship between the client and the developer can change, consistently passing through different forms of cooperation. A short-term FP contract corresponds to the initial stage of cooperation, the T&M model ensures flexibility and increased interaction, and the DT model indicates the strengthening of mutual trust and long-term joint plans.

Similarly, different forms of cooperation can be applied at different stages of the development of one software product. In this case, for example, the minimum viable product (MVP) could be developed using FP, debugging and functional improvement could be carried with payment of T&M, and the launch of a Dedicated Team will mean a transition to deployment and scaling.

A comparison of different collaboration options shows that the DT model is best suited for a long-term, value-adding project. Indeed, in this case, due to the combination of creativity and expertise of the customer and developers, a synergy effect arises. Some projects can only be performed by dedicated teams.

We can illustrate this with a typical project case for a dedicated team. In this project, SSA Group developed a market analysis solution for an American Fortune 500 manufacturer of industrial tools and household hardware. The dedicated team deeply delved into the specifics of the client’s business, processed large amounts of technical and business information and expanded the project’s technological stack by automating data collection, developing a database and implementing a dashboard for data analysis and reports generation.

During the course of the project, it grew from a small data-crawling task to a scalable business intelligence solution that allows automated extraction of e-commerce-related data from online retailers, giving marketers the ability to track and maintain brand competitiveness, predict future sales and improve decision-making abilities. This example shows that a dedicated team with their expertise and experience helps to determine the direction of the project and to see and implement additional opportunities for the client’s business.

Conclusion

We considered the details of the primary types and varieties of IT cooperation models that can be used in various types of software development projects. Practice shows the importance of matching the type of model used with the specific needs of the project.

We also analysed how the choice of collaboration methods between the customer and the contractor are carried out in software development. Thus, the flexible and client-oriented approach of SSA Group’s senior team of experts always makes the engagement mutually beneficial.

When starting a value-creating project, discuss your partnership model with successful IT services and solution provider, SSA Group. We offer flexible solutions to meet your needs, no matter what type of project you plan to develop.

You may also like

you're currently offline