Sooner or later, everything ends, and that is how the world works. And that includes the relationship between a client and a software solution provider. Sometimes the breakup takes place in a friendly atmosphere, and sometimes it is quite the opposite. Either way, it is worth considering the reasons for terminating the relationship, how the termination is carried out, and what the consequences can be.
Why do we part ways?
What are the reasons for terminating a collaboration? The answer to this question could take up this entire article, if not a book, so for our purposes here let’s just focus on the four most common reasons:
The work has been done, the product has been delivered. Excellent! We can say goodbye.
The product does not earn and the business goals have not been achieved, so the client has to give it up.
Collaboration between the client and the service provider does not proceed as planned.
The client has hired their own internal team to work on the product.
Unless the relationship ends naturally, it is worth taking measures to reduce the risk of unwanted situations or even prevent them altogether. But how to achieve this?
Nowadays, outsourcing is not just about doing the work commissioned by the client but working actively with them. The client and the external company form a single team that works together to achieve an intended goal.
At XSolve, we have completed nearly 160 projects over the past 14 years. Thanks to the experience gained in this way, we are able and willing to help our clients in achieving their business goals through consulting. How does this play out in practice?
Problem: The team recognizes that the Product Owner does not have medium or long-term plans for the product, user acquisition and monetization. The PO focuses only on two consecutive sprints without having a broader vision for the business domain of the product being created.
Consulting: If that is the case, we advise our clients to add a business analyst to the team, who can work with them to create a corrective action plan. Keep in mind that the client needs to be involved in the whole process: they should have full understanding of the purpose of the actions taken and an awareness of the potentially negative impact of the problem. The corrective action plan should also be presented to them for approval.
Problem: The client has been postponing the next update of the production environment for several weeks now, which means that new functionalities and bug fixes submitted by users will not be released. It is important to remember that the development process is in itself costly and delays in implementation generate alternative costs in the form of potentially lost profits. The sooner we provide users with new functions, the faster we will receive feedback on their usefulness and quality.
Consulting: That is why we always advise our clients to work on a strategy for updating the production environment, which, based on our experience, should take place at least every sprint or even every few days. Thanks to that, the application develops, provides users with functions that are supposed to meet their needs, and at the same time it generates the feedback necessary for its continuous upgrading.
These are just two cases in point of our approach to consulting. However, consulting at XSolve is not just about providing ad hoc help in the application development process. We also offer our assistance throughout the entire product life-cycle. App release is just the beginning and on its own is not enough. The product should have a development roadmap and a plan for monetization. Both make it possible to avoid a situation in which a product’s development cycle ends when placed on the market or is limited to simple maintenance.
Putting everything on the table is always beneficial. Many teams do not carry out retrospectives with the client, which is a mistake. The client is part of the team and any comments on cooperation or other topics should reach them directly, not through a proxy (project manager).
By improving the flow of information and reducing congestion in communication between the client and the outside company, misunderstandings can be avoided. That is why at XSolve we do not have project managers. The client’s PO can speak directly with each team member individually as well as with the whole team at once.
The full transparency and partnership approach between the service buyer and the service provider is the simplest and the least expensive way to avoid the risk of cooperation collapse.
Ending the cooperation
Unfortunately, sometimes it is impossible to solve every problem, or maybe the circumstances and business environment change, and the cooperation comes to an end. It is crucial that the ‘breakup’ takes place in a friendly atmosphere and ends positively for both parties. Usually in such cases, both parties are mainly guided by the provisions of the agreement, but this does not necessarily mean throwing paragraphs at each other. It is much more beneficial for both parties if the process takes place in an atmosphere of mutual understanding and ‘gentlemen’s agreement’.
Depending on the reasons for ending the cooperation, it is worth remembering that our business reality is constantly changing and today’s breakup does not have to exclude tomorrow’s collaboration on another product.
What should you pay attention to when ending a business relationship? Here are some of the most important aspects of how we approach this issue at XSolve:
It depends on the agreement. Our contracts always include the provision that it is the client that holds property rights to the code. After the agreement is terminated, the entire code is transferred to the client.
Server and databases
On most occasions, we try to keep the application on the client’s AWS account, which we administer only. This solution gives the client certainty and full cost transparency, because they make all payments for the application and database servers via their own AWS account.
In other circumstances, we offer assistance with the transfer from our server, along with the entire process of launching the application in a new production environment.
Our projects are managed in various applications: Jira, Asana or Redmine. We always use Jira on our end, hence backlog export is so easy that anyone can do it. If the project is run in the application at the client’s end, there is no need to make any changes other than revoke the access of the relevant people.
Pro-tip: The current task list in the form of a backlog in the project management application is worth exporting to a pdf, xls or csv file. This will allow another team in the future to seamlessly return to development work.
Project documentation is a very important aspect, not only with regard to the code but also project duration and reports on the work done. By sending reports every sprint we have continuity of information about what was planned and delivered.
After satisfying all of the above, it is worth taking some time to review the agreement with the partner to identify any areas which may potentially cause conflict or unintended negative legal consequences due to ambiguities in the provisions. Working hand in hand, we can make sure that once the cooperation is over, all parties to the agreement will part ways with mutual respect, and certainty as to the legal consequences of contract termination. This is the way we approach the completion of our business relationships at XSolve.
The end of a collaboration, regardless of the reasons, is always an important moment for both parties. If the arrangement expires naturally, then there is no problem – everyone parts ways in good spirits and with the satisfaction of a job well done. However, there are times when the business relationship ends earlier than anticipated and various factors influence whether it is a happy ending or not.
It is always better if the ending takes place in an atmosphere of mutual understanding and respect. This can only be achieved through transparent communication between the partners and a flexible approach to the business needs of both parties. In this way, no bridges are burned, and today’s ‘goodbye’ may turn into tomorrow’s ‘hello’.