Our company, being rather small, doesn't have much in the way of policies and procedures for good development. When I first started, I developed some, but we now need to update these in a more formal manner. Since I don't have much experience in writing policies (I've written plenty of instruction sets, so I'm not as worried about the procedures, though still thoughtful), I want to ask the community for tips and advice on writing good policies and procedures for software development. Thanks.
Some of policies depend of your programming languages, but :
- Write naming rules to uniforme the code of your team
- Write general coding rules like KISS principle
- For customers and bugs management, take a look at ITIL
- For delay and tasks management, I recommand Scrum method
- Write a chapter about design patterns (design pattern head first)
- If you want more formal procedures, have a look at ISO 90003
Some other books can help you like Code complete
My humble opinion... don't overdo it :) A small team needs a shared understanding and vision of how things work. While policies serve communications in large companies, they tend to devolve into power struggles with smaller groups. I found traditions grown out of experience more useful than procedures stated ahead of time.
That said, software dev establishments need some systems for source control, issue tracking, and a place for dropping documentation. Clarity around how decisions are made is immensely useful, as is an understanding of what a project looks like.
Avoid fights on whether there has to be a space character before the semicolon like the plague, and make sure to leave enough room for fun...