By default, modules generated with features are created with a version string in the * .info file.
I think the convention is to increase this version number when the functionality changes.
In a distributed development workflow with a lot of merging, a linear version increment is not a useful template or metaphor.
Is the version number and its increment useful or necessary?
I work in a project where so far almost none of the features have a version number. But recently, a colleague reported problems restoring the features on the deployment, if they do not have a version. This could be pure coincidence, caused by something other than the missing version number.