I consider myself still a novice programmer but I'm starting to develop and maintain applications with end users for the company I'm working for. We don't have a policy on version numbers and I'm looking for advice on when best to update them. I understand the major.minor portion is largely a judgment call. Am I right that "build" is increased every time a working build is made during development and "hotfix' is used when ever a hotfix or patch is rolled out?

Where I'm at, they seem to only really update the hotfix portion regardless of when the software is updated, we're talking v1.0.0.258 or v 1.0.1.98
I don't like this methodology especially since we have scheduled service pack dates of once a month, and have made somewhat drastic changes to the functionality and interfaces of some software yet, everything is still at version 1.0.x.x.

Anyone care to share any thoughts on how they update their version numbers or what is an advisable method?

commented: Good question indeed. +11