Most of the software company have old software which continue maintain, and they also develop current / new software. How they manage different versions of program? Is there any tools to help developers maintain software version? thz
In general, people use what is called software configuration management software, which usually includes a version control system like Subversion, Mercurial, git, Visual SourceSafe, et cetera and a project management suite such as Trac, Bugzilla, Google Code, SourceForge and the like. There are about a million options here.
Personally, I'm a big fan of the Mercurial and Trac combination, but lots of people live by Subversion (and people love git, too).