Le Concurrent Versions System (CVS) est utilisée par les développeurs de logiciels pour suivre le processus de développement. De nombreux projets de logiciels, en particulier dans le domaine du développement open-source, exiger des promoteurs dans différentes parties du monde à collaborer pour créer et maintenir des logiciels. Aussi connu sous le Concurrent Versioning System, CVS est une méthode utilisée pour s'assurer que chaque développeur peut garder la trace des modifications qui sont apportées dans le logiciel.
Le développement logiciel est un processus rigoureux. Le travail derrière les coulisses qui va dans la création d'applications de logiciels implique souvent des heures de travail résoudre les "bugs de logiciels», ou des erreurs dans le programme qui provoque des résultats inattendus. En utilisant un Concurrent Versions System, les développeurs ne sont pas seulement en mesure de garder une trace de toutes les modifications qui sont apportées à l'application, ils sont aussi capables de "rouler" sur ces modifications en cas de problème. Cela permet de réduire le temps qu'il faut pour développer le logiciel.
La plupart des types de versions concurrentes Systems travaillent en ayant un serveur central qui stocke le code de programmation et de documentation. Les clients peuvent se connecter à ce serveur pour demander une copie du code ou la documentation, effectuer des révisions sur elle, puis le télécharger vers le serveur. Le serveur va ensuite enregistrer les nouveaux changements sans supprimer la copie avant. C'est ainsi qu'un CVS est en mesure de veiller à ce que les développeurs de logiciels peuvent annuler les modifications qui sont apportées à la programmation ou de la documentation.
Ce système permet également aux CVS pour aider les développeurs de logiciels pour la création et la maintenance de la documentation du logiciel pour leurs applications. En ayant un système concurrent versions, les développeurs sont en mesure de garder une trace de toutes les modifications et adjonctions apportées au programme depuis la dernière version. Cela permet aux rédacteurs de documentation pour ajouter des descriptions des nouvelles fonctionnalités de la documentation existante plutôt que de les obliger à écrire de nouveaux documents à partir de zéro. Cela peut considérablement réduire le temps de production et le coût de la documentation du logiciel.
Comme le développement open-source a augmenté, l'importance de CVS dans le monde de la programmation a également augmenté. Les équipes de développement de logiciels traditionnels ont généralement été situé dans une petite zone géographique sur un système fermé. Développement open-source, en revanche, se caractérise souvent les programmeurs de logiciels du monde entier collaborent sur un même projet. Sans un tel système CVS, le développement open-source ne serait pas pratique.
Même si le Concurrent Versions System a vu son ascension à travers le développement open-source, ses applications dans d'autres domaines d'activité sont incommensurables. Le domaine de la loi a souvent gardé la trace de changements, ce qui rend CVS utile pour les applications juridiques. Peu importe ce que son utilisation, les avantages de l'Concurrent Versions System devenu évident depuis son développement.