a. Khái niệm
Quản lý phiên bản kết hợp các quy trình và các công cụ để quản lý các phiên bản khác nhau của các đối tượng cấu hình được tạo ra trong quá trình phát triển phần mềm. Quản lý phiên bản chú trọng vào quản lý mã nguồn, nên còn được gọi là quản lý mã nguồn.
b. Thuật toán trong quản lý phiên bản
Quản lý mã nguồn bao gồm hai vấn đề chính: Quản lý các thay đổi giữa hai hay nhiều mã nguồn và tích hợp hai hay nhiều mã nguồn.
• Thuật toán Diff: So sánh hai hay nhiều file mã nguồn.
• Thuật toán Merge: Tích hợp hai hay nhiều file mã nguồn.
Có hai mô hình hệ thống quản lý phiên bản chính: hệ thống quản lý phiên bản tập trung và hệ thống quản lý phiên bản phân tán.
c. Phân tích và so sánh ưu, nhược điểm của hai mô hình hệ thống: mô hình tập trung và mô hình phân tán. Hai loại mô hình này đã xây dựng nên nhiều hệ thống quản lý phiên bản hoạt động khá hiệu quả. Tuy nhiên, hai loại mô hình này đều có
nhược điểm chung là: chưa có công cụ hỗ trợ biên dịch và chạy các tích hợp của hai hay nhiều mã nguồn sau khi nó được thay đổi. Do vậy, cần phải có một tiến trình build tự động các chương trình, thành phần sau khi đã được tích hợp và người phát triển đã tạo ra những thay đổi đó phải được thông báo kết quả.
d. Đưa ra giải pháp: Xây dựng một hệ thống quản lý phiên bản mới: Tích hợp công cụ build tự động với hệ thống quản lý phiên bản.