Hiện nay, công nghệthông tin được xem làmột trong những ngành công nghệ
mũi nhọn được nhànước ta ưu tiên phát triển đặc biệt làlĩnh vực công nghệphần
mềm. Tuy nhiên, lĩnh vực công nghệphần mềm của nước ta vẫn còn khánon trẻso
với nền công nghệphần mềm của thếgiới. Nên trong giai đọan hiện nay, các công
ty phần mềm thường gặp rất nhiều khókhăn liên quan đến qui trình phát triển phần
mềm.
Quản lýcấu hình phần mềm vốn làmột vấn đềrất được quan tâm trong qui
trình sản xuất phần mềm. Hiện nay, qui trình quản lýcấu hình phần mềm tại phòng
phát triển phần mềm trực thuộc trung tâm tin học trường Đại Học Khoa Học Tự
Nhiên Tp. HồChíMinh vẫn chưa được hoàn chỉnh. Do đó, việc hoàn thiện một hệ
thống quản lýcấu hình ở đây làcần thiết cho quá trình sản xuất phần mềm hiện tại
được thuận tiện hơn vàchuẩn bịcho việc thực các đềán phần mềm lớn sau này đạt
hiệu qủa cao.
184 trang |
Chia sẻ: nhungnt | Lượt xem: 2403 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề tài Quản lý cấu hình phần mềm tại phòng phát triển phần mềm quang trung – trung tâm tin học, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
KH
OA
C
NT
T –
Đ
H
KH
TN
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
HÔ ̀ NGUYÊ ̃N NGO ̣C PHƯƠNG – 0012076
TRIÊ ̣U NGO ̣C TOA ̀N – 0012105
QUẢN LY ́ CẤU HI ̀NH PHẦN MÊ ̀M
TẠI PHO ̀NG PHÁT TRIÊ ̉N PHẦN MÊ ̀M
QUANG TRUNG – TRUNG TÂM TIN HỌC
LUẬN VĂN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN
TS. TRÂ ̀N ĐAN THƯ
Th.S. NGUYÊ ̃N TRỌNG TA ̀I
TP. HCM, 2004
KH
OA
C
NT
T –
Đ
H
KH
TN
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
KH
OA
C
NT
T –
Đ
H
KH
TN
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
KH
OA
C
NT
T –
Đ
H
KH
TN
Lời cám ơn
Luận văn của chúng em sẽ rất khó hoàn thành nếu không có sự truyền đạt kiến
thức quí báu và sự hướng dẫn tận tình của Thầy Trâ ̀n Đan Thư và thầy Nguyê ̃n
Trọng Ta ̀i. Chúng em xin chân thành cám ơn sự chỉ bảo của các thầy.
Chúng con xin gửi tất cả lòng biết ơn, sự kính trọng đến ông bà, cha mẹ, cùng
toàn thể gia đình, những người đã nuôi dạy, đã cho chúng con niềm tin và nghị lực
để vượt qua mọi khó khăn.
Chúng em xin trân trọng cám ơn quý Thầy cô trong Khoa Công nghệ thông tin
trường Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh đã tận tình giảng dạy, truyền
đạt những kiến thức quý báu và tạo điều kiện cho chúng em được thực hiện luận
văn này.
Xin chân thành cám ơn sự giúp đỡ, động viên và chỉ bảo rất nhiệt tình của các
anh chị đi trước và tất cả bạn bè. Các anh chị, các bạn luôn có mặt trong những thời
điểm khó khăn nhất, tiếp thêm động lực và ý chí, giúp chúng tôi hoàn thành được
luận văn.
Mặc dù đã cố gắng nỗ lực hết sức mình, song chắc chắn luận văn không khỏi
còn nhiều thiếu sót. Chúng em rất mong nhận được sự thông cảm và chỉ bảo tận tình
của quý Thầy cô và các bạn.
Tp.HCM, 7/2004
Nhóm sinh viên thực hiện
Hô ̀ Nguyê ̃n Ngo ̣c Phương – Triê ̣u Ngo ̣c Toàn
KH
OA
C
NT
T –
Đ
H
KH
TN
Lời nói đầu
Hiê ̣n nay, công nghê ̣ thông tin được xem la ̀ một trong những nga ̀nh công nghệ
mũi nhọn được nha ̀ nước ta ưu tiên pha ́t triê ̉n đặc biệt la ̀ lĩnh vực công nghệ phâ ̀n
mê ̀m. Tuy nhiên, lĩnh vực công nghệ phâ ̀n mềm của nước ta vẫn còn kha ́ non tre ̉ so
với nê ̀n công nghệ phâ ̀n mềm của thế giới. Nên trong giai đọan hiê ̣n nay, các công
ty phâ ̀n mềm thường gặp râ ́t nhiê ̀u khó khăn liên quan đê ́n qui trình pha ́t triê ̉n phâ ̀n
mê ̀m.
Qua ̉n lý câ ́u hình phâ ̀n mềm vô ́n la ̀ một vâ ́n đê ̀ râ ́t được quan tâm trong qui
trình sa ̉n xuâ ́t phâ ̀n mềm. Hiê ̣n nay, qui trình qua ̉n lý câ ́u hình phâ ̀n mềm tại phòng
pha ́t triê ̉n phâ ̀n mê ̀m trực thuộc trung tâm tin học trường Đa ̣i Học Khoa Học Tự
Nhiên Tp. Hồ Chí Minh vâ ̃n chưa được hoàn chỉnh. Do đó, viê ̣c hoàn thiện một hê ̣
thô ́ng qua ̉n lý câ ́u hình ở đây là câ ̀n thiê ́t cho quá trình sa ̉n xuâ ́t phâ ̀n mềm hiê ̣n ta ̣i
được thuận tiê ̣n hơn va ̀ chuẩn bị cho viê ̣c thực ca ́c đê ̀ a ́n phâ ̀n mềm lớn sau na ̀y đa ̣t
hiê ̣u qủa cao.
Từ nhu câ ̀u nói trên, chúng em đa ̃ tiê ́n ha ̀nh thực hiện đê ̀ ta ̀i “Qua ̉n lý câ ́u hình
phâ ̀n mê ̀m ta ̣i phòng pha ́t triê ̉n phâ ̀n mềm Quang Trung – Trung tâm tin học”.
Nhằm mục đích cùng với phòng pha ́t triê ̉n phâ ̀n mê ̀m thiết lâ ̣p một hê ̣ thô ́ng qua ̉n lý
câ ́u hình tốt có thê ̉ a ́p dụng va ̀o quá trình sa ̉n xuâ ́t phâ ̀n mềm của trung tâm.
Nội dung của luận văn được chia làm 7 chương
Chương 1: Mở đầu
Chương 2: Tổng quan về quản lý cấu hình phần mềm
Chương 3: Quản lý cấu hình phần mềm trong CMM & CMMI
Chương 4: Các vấn đề thường gặp trong quản lý cấu hình phần mềm và giải
pháp
Chương 5: Ca ́c công cụ hỗ trợ qua ̉n lý câ ́u hình phâ ̀n mềm
Chương 6: Ứng dụng Software Version Management
Chương 7: Tổng kê ́t
KH
OA
C
NT
T –
Đ
H
KH
TN
Mục Lục
Chương 1 Mở đâ ̀u ..................................................................................................1
1.1 Qua ̉n lý câ ́u hình phâ ̀n mềm trên thê ́ giới va ̀ ở Viê ̣t Nam .............................1
1.2 Ca ́c công cụ hỗ trợ qua ̉n lý câ ́u hình hiê ̣n ta ̣i.................................................2
1.3 Mu ̣c tiêu đê ̀ ta ̀i................................................................................................2
Chương 2 Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm ...........................................4
2.1 Kha ́i niê ̣m.......................................................................................................4
2.2 Nguô ̀n gốc hình tha ̀nh của qua ̉n lý câ ́u hình..................................................5
2.3 Pha ̣m vi và nhiê ̣m vu ̣ của qua ̉n lý câ ́u hình ...................................................6
2.3.1 Mức độ mong muốn và việc phân tích chi phí và lợi nhuận ................6
2.3.2 Ví dụ......................................................................................................8
2.3.3 Cân nhắc lợi ha ̣i ..................................................................................12
2.3.4 Những bâ ̃y kê ́t hợp với pha ̣m vi .........................................................16
2.3.5 Cách xứ lý các thứ khác ở bên ngoài ..................................................16
2.4 Ca ́c vai trò trong qua ̉n lý câ ́u hình phâ ̀n mê ̀m .............................................17
2.4.1 Con người va ̀ qua ̉n lý câ ́u hình ...........................................................17
2.4.2 Ca ́c vai trò trong qua ̉n lý câ ́u hình ......................................................18
2.4.3 Ca ́c vai trò trong tổ chức.....................................................................23
2.4.4 Ca ́c vai trò liên quan đê ́n đê ̀ a ́n...........................................................28
2.4.5 Ca ́c vai trò bên ngoài ..........................................................................35
2.5 Dữ liê ̣u cho qua ̉n lý câ ́u hình .......................................................................36
2.5.1 Ca ́i gì được đưa vào qua ̉n lý câ ́u hình ................................................36
2.5.2 Những điê ̀u câ ̀n biê ́t vê ̀ một tha ̀nh phâ ̀n câ ́u hình...............................44
2.6 Hê ̣ thống qua ̉n lý câ ́u hình phâ ̀n mê ̀m .........................................................53
2.6.1 Kha ́i niê ̣m:...........................................................................................53
2.6.2 Mu ̣c tiêu ..............................................................................................54
2.6.3 Lợi ích .................................................................................................54
2.6.4 Ca ́c tiến trình con trong qua ̉n lý câ ́u hình phâ ̀n mềm .........................54
Chương 3 Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI...........................56
KH
OA
C
NT
T –
Đ
H
KH
TN
3.1 Mô hi ̀nh trưởng tha ̀nh ..................................................................................56
3.2 CMM version 1.1 .........................................................................................56
3.2.1 Mức độ trưởng thành của CMM Version 1.1 .....................................56
3.2.2 Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM version 1.1 ........................57
3.3 Qua ̉n lý câ ́u hình trong CMMI.....................................................................59
3.3.1 Các mức trưởng thành của CMMI......................................................59
3.3.2 Qua ̉n lý câ ́u hình trong CMMI ...........................................................60
Chương 4 Vâ ́n đê ̀ định danh, qua ̉n lý phiên ba ̉n va ̀ ca ́c gia ̉i pha ́p.......................76
4.1 Đặt tên các đối tượng câ ́u hình ....................................................................76
4.1.1 Đặt tên phân cấp dựa theo cấu trúc cây. .............................................76
4.1.2 Đặt tên phân cấp dựa theo phương pha ́p tiê ̀n tố va ̀ hâ ̣u tô ́..................77
4.1.3 Nhâ ̣n xe ́t chung ...................................................................................79
4.2 Xa ́c định va ̀ định danh phiên ba ̉n.................................................................79
4.2.1 Sơ đồ tuyê ́n tính ..................................................................................80
4.2.2 Sơ đồ định danh theo mạng. ...............................................................80
4.2.3 Sơ đồ định danh theo tên.....................................................................81
Chương 5 Ca ́c công cụ hỗ trợ qua ̉n lý câ ́u hình...................................................82
5.1 Tóm tắt .........................................................................................................82
5.2 Tính năng chung của Surround SCM và CVS.............................................82
5.3 Surround SCM .............................................................................................82
5.3.1 Mu ̣c đích .............................................................................................82
5.3.2 Câ ́u trúc của chương trình...................................................................83
5.4 CVS va ̀ CVSNT...........................................................................................84
5.4.1 Mu ̣c đích .............................................................................................84
5.4.2 Câ ́u trúc của CVSNT ..........................................................................84
Chương 6 Ứng dụng minh họa “System Version Management” ........................86
6.1 Phân tích hiện trạng phát triển phần mềm tại T3H ......................................86
6.2 Đặc ta ̉ yêu câ ̀u của hệ thống mới .................................................................95
6.3 Mô hi ̀nh UseCase .........................................................................................99
KH
OA
C
NT
T –
Đ
H
KH
TN
6.4 Đặc ta ̉ usecase ..............................................................................................99
6.4.1 Đặc tả UseCase : Đăng Nhập (Login) ................................................99
6.4.2 Đặc tả UseCase : Thêm/xoá kho chứa ..............................................101
6.4.3 Đặc tả UseCase : Thêm/xoá đề án ....................................................102
6.4.4 Đặc tả UseCase : Cập nhật cấu trúc đề án ........................................104
6.4.5 Đặc tả UseCase : Cập nhật cây phân hệ, chức năng .........................106
6.4.6 Đặc tả UseCase : Tạo release............................................................108
6.4.7 Đặc tả UseCase : Gán nhãn cho các thực thể ...................................109
6.4.8 Đặc tả UseCase : Phân quyền ...........................................................110
6.4.9 Đặc tả UseCase : Thiết lập ảnh hưởng giữa các versionfile .............112
6.4.10 Đặc tả UseCase : Xem lịch sử phiên bản của thực thể..................113
6.4.11 Đặc tả UseCase : Thực hiện check in............................................114
6.4.12 Đặc tả UseCase : Thực hiện check out..........................................115
6.4.13 Đặc tả UseCase : Get.....................................................................116
6.5 Thiê ́t kê ́ ......................................................................................................118
6.5.1 Kiê ́n trúc hê ̣ thống.............................................................................118
6.5.2 Giao diê ̣n...........................................................................................118
6.5.3 Mô hi ̀nh lớp đối tượng ......................................................................123
6.5.4 Mô hi ̀nh dữ liê ̣u.................................................................................144
6.6 Mô hi ̀nh thiê ́t kê ́ .........................................................................................157
6.6.1 Đăng nhâ ̣p .........................................................................................157
6.6.2 Thêm kho chứa..................................................................................158
6.6.3 Thêm đề án........................................................................................158
6.6.4 Xem Cấu trúc của project .................................................................159
6.6.5 Xem kiến trúc của đề án....................................................................159
6.6.6 Check out ..........................................................................................160
6.6.7 Check in ............................................................................................161
6.6.8 Gán nhãn cho Item............................................................................162
6.6.9 Thiết lập quan hệ giữa hai versionfile...............................................163
KH
OA
C
NT
T –
Đ
H
KH
TN
6.6.10 Xem lịch sử của Item ....................................................................164
Chương 7 Tổng kê ́t ............................................................................................165
7.1 Tự đa ́nh gia ́ ................................................................................................165
7.2 Hướng pha ́t triển ........................................................................................165
KH
OA
C
NT
T –
Đ
H
KH
TN
Trang i
Danh sa ́ch hình
Hình 2-1 Cây cấu hình phần mềm ..............................................................................5
Hình 2-2 Tổng chi phí của quản lý cấu hình...............................................................8
Hình 2-3 Nhiều ban quản lý cấu hình .......................................................................20
Hình 2-4 Khách hàng, người ký hợp đồng, các hợp đồng phụ .................................35
Hình 2-5 Sơ đồ phân cấp các thực thể cấu hình........................................................36
Hình 2-6 Đặc tả yêu cầu của một delivery................................................................41
Hình 2-7 Mối quan hệ về phần cứng của delivery....................................................42
Hình 2-8 Tổng quan về siêu dữ liệu..........................................................................45
Hình 2-9 Siêu dữ liệu nhận biết sự duy nhất.............................................................46
Hình 2-10 Siêu dữ liệu cho việc phân trách nhiệm...................................................50
Hình 2-11 Siêu dữ liệu chỉ mối quan hệ đến các thực thể cấu hình khác .................51
Hình 2-12 Ví dụ của việc theo vết ............................................................................52
Hình 2-13 Sơ đồ các tiến trình con trong quản lý cấu hình ......................................55
Hình 3-1 ca ́c mức trưởng tha ̀nh của CMMI..............................................................59
Hình 4-1 Cây phân cấp đặt tên..................................................................................77
Hình 4-2 Sơ đồ định danh theo ma ̣ng ..........