Cooperation models with software development company

Piotr Lewandowski, 7 September 2018

Cooperation with developers in implementation and deployment of software becomes necessity as a result of increasing computerization demand. Following article describes cooperation models with programming company.

Businesses usually cooperate with software development companies in two models: fixed price and outsourcing T&M (Time and Materials). Both solutions have advantages and disadvantages.

Fixed price

Fixed price model means that programming company set specific price and completion date for all services. This solution give comfort of costs control. The biggest disadvantage of this solutions is that, clients unwillingly agree for changes and deviations from original terms of contract and specification. This is troublemaker when it comes to bigger projects, when the system conception changes with time and development of another modules. This also leads to many clashes during process of receiving ready product. Every software extension mean another assessments and negotiations about the scope of work.

Outsourcing T&M

Within T&M collaboration the hourly rate of developer work is established. This model is better adapted to today’s way of software development and to rapidly changing business environment. When it comes to outsourcing, the scope of work can be always modification, the current projects can be suspended in the favor of problems with highest priories, which came up suddenly. It doesn’t make conflicts on both sides. The main threat of this kind of cooperation is that, it seemed to be less oriented on effects. To avoid it, it is necessary to keep up-to-date with the progress on assigned tasks. In ImpiCode we provide detailed reports which describe tasks assigned to developers and time needed to do it. Client always work with the project manager, who has knowledge and technical experience to order estimation and roadmap and to be up-to-date with progress controlling. Outsourcing means that both sides work with each other to accomplish the best effects.


Service Level Agreement is specific kind of agreement between software development company and business client. The programming company provide maintenance of an IT system and its constant operation. In this particular kind of contract, special attention must be given to gurantee response time and to detail response time on critical and noncritical errors. Within such agreement, the software development company also provides extra hours in case of executing minor functionalities.