1. Software versioning is the process of assigning either unique version names or unique version numbers to unique states of computer software.