| • Science | • People | • Locations | • Timeline |
This is used in practical terms by the consumer, or client, by being able to compare their copy of the software product against the newest released by the programmer. For the programmer team, or company, versioning is often used on a file-by-file basis, where individual parts or sectors of the software code are compared and contrasted with newer or older revisions, often in a collaborative Concurrent Versions System. There is no absolute and definite software version schema; it can often vary from software genre to genre, and is very commonly based on the programmer's personal preference.
In software, version numbers are a numbering scheme used to allow the software development organization to better track issues and fixes within the field population. It also allows the customer service arm of the organization to know which issues have been discovered and/or fixed in which releases of the software.
Version numbers are typically three sets of digits, often separated by periods, such as version 2.1.5 or something similar, following the structure:
This numbering scheme usually denotes the major release number, the minor release number, and the revision number. There is sometimes a fourth, hidden number which denotes the software build number. This scheme is used by Microsoft. Some companies also include the build date. Version numbers may also include letters and other characters.
In most cases, the first released version of a software product has version 1. Numbers below 1 mean alpha or beta versions, i.e., versions for testing purposes or internal use, or versions that aren't stable enough for general or practical deployment.
In principal, in the next released version, the major version number is increased when there are significant jumps in functionality, and the minor version number is incremented when only minor features or fixes have been added. A typical product might use the numbers 0.9[beta], 1.0, 1.1, 2.0, 2.1, 2.2.
In practice, product names and version numbers are subject to marketing forces. Sun's Java, for example, has had the versions:
Software may have an "internal" version number which differs from the version number shown in the product name (and which typically follows version numbering rules more consistently). J2SE 5.0, for example, has the internal version number of 1.5.0.
Some computer file systems, such as the OpenVMS Filesystem, also keep versions for files.
Versioning amongst documents is relatively similar to the routine used with computers and software engineering, where with each small change in the structure, contents, or conditions, the version number is incremented by 1, or a smaller or larger value, again depending on the personal preference of the author and the size or importance of changes made.