Jeff W. Barnes

Ramblings on C#, WCF, and random .NET

General Development Guidelines

Peter Bromberg posted a good read about the basic rules of development.  I happen to agree with all of his points, but there are a couple of them I consider to be particularly significant.

1) A Development Team Should have a Single Design Authority.

I don't think it is by coincidence that Peter posted this one as first on his list.  There has been more than one occasion where I have seen the lack of a single design authority lead to a complete mess.  It doesn't take long for a system to become difficult to comprehend with 5 or 6 people attempting to mesh together their own designs.  For example, try to imagine if everyone on your team used a different approach to data access.  Most likely, you wouldn't want to inherit the maintenance of such a system...unless you are a masochist.

It is absolutely critical to choose a single, qualified person to lead the design of a system. 

3) Good people build good systems, bad people build bad systems.

I completely agree.  When it comes to developers, management often places an emphasis on quantity over quality.  You can push all of the best practices in the world at a bad development team and it won't change a thing.  Developers that are passionate about their job with a drive to excel are far more likely to build a great system.  A team full of apathetic developers is not a group you would want to entrust with the development of a quality system.

Personally, I would put my money on a team of motivated, passionate developers with less experience over a team of arrogant, indifferent developers with significantly more experience. 

Comments

No Comments



Disclaimer:The opinions and views expressed within this blog are solely my own and do not represent those of my employer or anyone else.