VSS can maintain multiple versions of a file, including a record of the changes to the file from version to version.
Version control addresses the following areas:
Teamcoordination — making sure, by default, that only one person at a time is modifying a file. This prevents files from accidentally being replaced by another user's changes. Your administrator can change this default to allow multiple simultaneous checkouts of a single file, while still preventing overwrites of other changes.
Version tracking — archiving and tracking old versions of source code and other files, which can be retrieved for bug tracking and other purposes.
Cross-platform development — tracking portability issues involved in maintaining one code base across multiple development platforms.
Reusable or object-oriented code — tracking which programs use which modules so that code can be reused.