Small companies lack best practices, but should they? (part 1)

by Xavier Pacheco 3. September 2007 16:13

Recently, a colleague and I were discussing the merits of best practices amongst small teams.  The context of this discussion is of a development consulting company; companies that provide development resources from project managers to programmers and testers.

We agreed that "best practices" are often a difficult sell to clients that out source their projects to these consulting companies. The reason is that the there is a notion that best practices are time consuming tasks that offer no tangible benefit, but only perceived benefit.  In other words, to the client, adding an extra X hours to a task that takes X hours to develop and deliver seems like unnecessary time and money. However, there is a serious fallacy to this reasoning. 

Take, for instance, the best practice of code reviews. The whole purpose behind code reviews is to prevent defects in the software and to allow for their repair early in the project life-cycle. Generally speaking a defect costs much more to repair later in the development cycle. Therefore, it is advantageous to  find it and fix it soon. This is made possible through code reviews. 

One study involves a 10,000 line project done by two different groups of developers. One group did not perform code-reviews. The other did.  The amount of money that would have been saved is substantial as shown in the figures below.

 

 

Personally, if I am the the customer hiring a development company, I want to make sure that the company performs code reviews, otherwise, I may be agreeing to pay some serious dough when I didn't have to.

If I'm the development company, and if I'm honest, I want to offer my clients the best service for their money. If I really believe that code reviews work, then I am going to work it into the development agreement. If a potential client resists, then I must show the potential cost in my estimate realizing I may not win the client.

I'll leave the analysis up to the reader. For more on this study, go here:  Code Review Study.

 

Thoughts?

DotnetKicks

Tags:

Project Management | Software Development | Best Practices

Comments (1) -


 John Waters 
September 5. 2007 09:41
This is the tricky part: "If a potential client resists, then I must show the potential cost in my estimate realizing I may not win the client.". If you are negotiating a million dollar contract, you may actually not want to lose the client and would rather accept that they dont realize the true cost of not doing code reviews, and proceed at a higher total cost but lower initial cost rather than lose the contract to someone else who is less adamant about practices. In negotiations, rational thinking is sadly only part of the process. So, I would agree with you if you have more work than you can handle and million dollar contracts banging at the door, but if not... the customer loses if they dont buy the facts, but the show must go on...

Add comment




  Country flag
biuquote
  • Comment
  • Preview
Loading


Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2012 X Talks Tech