In Qulix we know that it is impossible to have a unified approach to every outsourcing project. Large projects must have higher level of processes' maturity and internal complexity than small ones that can have no formal processes at all and still be very successful. Although both large and small projects must be thoroughly controlled at each project phase to avoid failures.
Since our establishment we have been using a wide set of well known software development methodologies such as RUP, MSF and others depending on customer requirements. We believe that Qulix is a truly customer oriented company, so the idea is to be as much flexible and transparent for our clients as possible. We understand that it is much easier for a client to work with a software development outsourcing vendor if it can tailor its processes to the form acceptable for the client, than to work with a company that demands to adjust client's processes just to follow some internal standard.
We adopt our project methodologies to the needs of our clients making our processes homogeneous with the existing ones, thus assimilating into client's working environment. On the other hand, our clients can benefit from ISO compliant RUP-based mature processes organization in Qulix if they want to. We can spread our expertise in process engineering to our clients to adjust their software development process to the most efficient variant.
Clear project requirements are the key point to be successful in offshore software development project. Offshore team must know exactly what client wants to have at the end of the project. In some cases it is very difficult for a client to provide an offshore team with specifications detailed enough. In Qulix we assign local Business Analyst to convert customer needs into software development specifications. The Analyst is a gate between offshore software development team and client.
Offshore team should know the points of contact on each side - who is the local PM, who manages the project on the customer side, who is responsible for the requirements clarification and so on.
There should be an agreement on project milestones, deliverables and deadlines. Both sides must know when it is expected to have deliverables. On the other hand, it is a good practice to split a project into several milestones for better transparency.
An ideal project is the project where requirements are stabilized before its start. But in fact we often have requirements changed during project execution that leads to additional risks, as far as new changes will affect system quality if they are not thoroughly controlled. Each new change of requirements must be deeply analyzed by the offshore Architect/PM/Lead developer before its implementation and integration into the system.
New defects must be first assigned to responsible developers and then fixed. It is a good practice to use some defects tracking system for that purpose. In Qulix we use Rational Clear Quest by default providing web access to it for customers. But it is not an obstacle for us to use customer's in-house tracking system as well.
Version control is also a very important point in every project. It helps to avoid problems when it is required to support different product versions or in the case of complex changes/migrations.
In each of the client relationships that Qulix has entered into, we have consistently contributed to the identification and implementation of IT solutions that have clear and sustainable business benefits.
Our abilities in dealing with complex problems in IT business, in structuring our thinking and in reaching reasonable conclusions with the available facts and effective work done are critical for our company as a software development services provider. Looking at our case studies our clients are able to witness how we think about issues that arise and what kind of a business partner we can be.
We have vigorous practice to make sure that we are doing our job prosperously. Many our copartners say that dealing with us is valuable and informative for them as well as in helping them not only assess their business strengths and weaknesses but also define their professional goals.
We understand that in many aspects the offshore software development outsourcing model means a new business practice for the customer, full of hidden and explicit risks. So if you have any questions about how your project can be implemented by an offshore team, what challenges and opportunities it might bring for your business, please feel free to contact us.