ƯỜ
Ạ Ọ
Ệ
TR
NG Đ I H C CÔNG NGH TP.HCM Ệ
KHOA CÔNG NGH THÔNG TIN
ươ
Ch
ng X
Ả
Ấ
QU N LÝ C U HÌNH (Configuration Management CM)
1
Ộ
N I DUNG
•
• Qu n lý c u hình (Configuration Management CM) ấ
ấ
•
•
ả ậ ế
•
ả ả
•
ự
2
ả ấ ạ ả L p k ho ch qu n lý c u hình ổ ự Qu n lý s thay đ i ả Qu n lý phiên b n và phát hành ệ ố Xây d ng h th ng ụ Các công c CASE cho qu n lý c u hình
ấ
ả
Qu n lý c u hình
ự
ả ể ể ộ ả ứ ẩ
ủ ề ủ ụ ế
ầ ả ộ ủ c xem là m t ph n c a quy trình qu n lý
ơ
ệ ố ầ ớ
• Configuration Management CM là s phát tri n và ng ụ ẩ d ng c a các th t c và chu n đ qu n lý m t s n ph m ầ ph n m m đang ti n hóa ể ượ • CM có th đ ấ ượ ổ ng t ng quan h n ượ i CM, các h th ng ph n m m đôi c phát hành t ượ c g i là các baseline vì chúng là đi m b t đ u cho
ề ắ ầ ể
3
ơ ch t l • Khi đ ọ khi đ ể ự s phát tri n xa h n
ấ
ả
Qu n lý c u hình
4
ấ
ả
Qu n lý c u hình
5
ấ
ả
Qu n lý c u hình
•
ủ ụ Th t c CM đ nh nghĩa
•
ị ữ ư ử ổ ệ ố và x lý các thay đ i h th ng đ ượ ề c đ
ế ậ ổ ớ ộ
ươ ề ậ ể c s d ng đ nh n d ng ng th c đ
6
ả Cách l u gi nghị ầ Cách liên k t các thay đ i này v i các b ph n ph n ứ ượ ử ụ ạ m m và các ph ủ ệ ố các phiên b n khác nhau c a h th ng
ấ
ả
Qu n lý c u hình
•
ẩ ủ Các chu n c a CM
ị ẩ ấ ầ ế ể t đ
•
ấ ượ
•
ườ ợ ổ ẩ c d a trên các chu n CM bên t ng ụ ớ ng c c đi u ch nh cho phù h p v i môi tr
ầ ị
ổ ượ ể ậ ượ c c ki m soát và cách các
7
ử ụ Đ nh nghĩa và s d ng các chu n CM là r t c n thi ậ xác nh n ch t l ng ẩ ể ượ ự Các chu n có th đ ượ ỉ ề quát và đ ể ủ ổ ứ th c a t ch c ẩ Các chu n nên đ nh nghĩa các các thành ph n (item) đ ạ nh n d ng, cách các thay đ i đ ớ ượ ả phiên b n m i đ ả c qu n lý
ấ
ả
Qu n lý c u hình
• T i sao 1 h th ng t n t
8
ệ ố ồ ạ ở ạ ề ấ i nhi u c u hình khác nhau?
ấ
ả
Qu n lý c u hình
•
•
ấ Các c u hình đ
•
ấ
9
ệ ủ ứ ặ ầ ườ ượ ạ c t o ra: ệ ề Cho các máy/ h đi u hành khác nhau ứ Cung c p các ch c năng khác Đáp ng các yêu c u đ c bi t c a ng i dùng
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
ấ
ế ạ ị ầ ấ ả K ho ch qu n lý c u hình ượ • Đ nh nghĩa nh ng cái đ
ộ ơ ồ ượ ả ậ ạ ầ c qu n lý (thành ph n c u hình) ữ ể c dùng đ nh n d ng nh ng thành ph n
• Đ nh nghĩa ng ử
ữ và m t s đ đ đó ị
ủ ụ ấ ầ ấ ả ệ ườ và g i các thành ph n c u hình t
ể ả ị ố ớ i có trách nhi m đ i v i các th t c CM ớ i nhóm qu n lý c u hình ả ể • Đ nh nghĩa các chính sách đ qu n lý phiên b n và ki m
ổ soát s thay đ i
• Xác đ nh các công c mà ta nên đ
ự ị ụ ượ ử ụ ể ả c s d ng đ qu n lý
ử ụ
• Đ nh nghĩa c s d li u CM đ
ượ ử ụ
ấ c u hình và quy trình s d ng chúng ơ ở ữ ệ ị ữ ể ư c s d ng đ l u thông ượ ư c l u trong
10
ấ tin c u hình và nh ng thông tin khác nên đ CSDL đó
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
ậ
ệ ớ ầ ấ ạ ng t o ra hàng ngàn tài li u mà chúng
ả ố ờ c b o qu n trong su t th i
ậ ệ • M t s tài li u này ph i đ ủ gian s ng c a ph n m m ấ ấ c nh n d ng là duy nh t ả ượ ả ầ ề ớ ớ ứ ể ộ
• S đ phân c p v i v i các tên đa m c có th là m t ể
11
ạ Nh n d ng các thành ph n c u hình ườ ự • Các d án l n th ạ ả ượ ph i đ ộ ố ố ơ ồ ươ ể ấ ng pháp uy n chuy n nh t ph
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
•
ậ ạ ầ ấ
•
•
•
Nh n d ng các thành ph n c u hình ầ ấ
•
•
t kế ế ươ
12
ườ ử ụ Các thành ph n c u hình: Các đ c tặ ả Các thi ng trình Các ch ử ể ữ ệ D li u ki m th ẫ ệ ướ ng d n ng Tài li u h i s d ng
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
13
ấ ấ Phân c p c u hình
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
ơ ở ữ ệ ủ ả ấ
ượ ư ơ ở ữ ệ C s d li u c a qu n lý c u hình • T t c các thông tin CM nên đ c l u trong c s d li u
ấ ả ấ c u hình
ấ
•
ầ ầ ộ ư ấ ả ề • Nó còn cho phép các truy v n v qu n lý c u hình nh : ụ ể ệ ố ả • Ai có m t phiên b n h th ng c th ? ượ ệ ề • Ph n c ng và h đi u hành nào đ c yêu c u cho m t
ị ả ữ ưở ổ ủ ở ự ng b i s thay đ i c a
•
ầ
14
ả ộ ứ ả ụ ể phiên b n c th ? ả Nh ng phiên b n nào b nh h thành ph n X? Có bao nhiêu l ỗ ượ i đ c báo cáo trong phiên b n T?
ế ạ
ậ
ả
ấ
L p k ho ch qu n lý c u hình
ấ ơ ở ữ ệ ủ
ằ ượ ườ ng đ ợ c tích h p nh m
ề ả ầ ủ ầ
• C s d li u CM và các tài li u đ
ượ ả c qu n lý t ấ ả t c
đ ệ trong cùng h th ng
ợ ệ ộ ậ ế ộ
ở ự ưở
ượ ư ổ ế c l u tách
15
C s d li u c a qu n lý c u hình ộ ể • Có th là m t ph n c a môi tr ể ỗ ợ h tr phát tri n ph n m m ơ ở ữ ệ ệ ố ữ ượ ư c l u gi ể ể ượ ụ c tích h p đ liên k t m t • Các công c CASE có th đ ổ ớ ự ế cách tr c ti p các thay đ i v i các tài li u và các b ph n ổ ị ả b nh h ng b i s thay đ i ơ ở ữ ệ ơ ộ • M t cách ph bi n h n, c s d li u CM đ ơ ộ ệ ẻ ơ t vì nó r h n và linh đ ng h n bi
ả
ổ ự Qu n lý s thay đ i
ườ ư
ổ ố ớ
ầ i đ a ra các yêu c u thay đ i đ i v i
• Ai là ng ệ ố h th ng?
16
ả
ổ ự Qu n lý s thay đ i
ề ầ ể ổ ố ớ ệ ố • Các yêu c u thay đ i đ i v i h th ng ph n m m có th
ườ ầ ồ ừ ắ b t ngu n t i dùng
ng
ớ i vi c theo dõi các thay
ổ ả ằ ự ệ ệ ượ c th c hi n theo cách
• Ng • Nhà phát tri nể ị ườ ự • Áp l c th tr ự ả • Qu n lý s thay đ i liên quan t ả ổ đ i này và đ m b o r ng chúng đ ấ ề ệ hi u qu nh t v chi phí
17
ả
ả
ổ ự Qu n lý s thay đ i
18
ự ổ ả • Qui trình qu n lý s thay đ i
ả
ổ ự Qu n lý s thay đ i
ể ẫ ầ
ủ ầ ộ ẫ Bi u m u yêu c u thay đ i (change request form) ổ • S đ nh nghĩa c a m t bi u m u yêu c u thay đ i là m t
• Bi u m u này l u s thay đ i đ
ổ ể ế
c đ ngh , ng ổ ạ ườ ị ổ ượ ề i yêu ị ượ ề ự c đ ngh i sao s thay đ i này đ
ộ ậ ph n c a quy trình l p k ho ch CM ư ự ạ ủ ự
• Nó còn l u
ề ự ả ự ị ầ ủ ẫ ể ổ ầ c u thay đ i, lý do t ổ ấ và tính c p bách c a s thay đ i ư ướ ượ c l
19
ề ưở ổ ng v s thay đ i, phân tích nh ị ổ ng, chi phí thay đ i và các đ ngh h
ả
ổ ự Qu n lý s thay đ i
20
ả
ổ ự Qu n lý s thay đ i
ự ụ
ự ả ổ ổ Các công c theo dõi s thay đ i • M t v n đ chính trong qu n lý s thay đ i là theo dõi
ộ ấ ạ ổ tr ng thái c a s thay đ i
ổ ự ủ ạ
ả ằ ầ
ể ờ i, đúng th i đi m
• Các công c theo dõi s thay đ i theo dõi tr ng thái c a ả ừ t ng yêu c u thay đ i và đ m b o r ng các yêu c u thay ườ ổ ượ ử ớ đ i đ ự ệ ố ượ • Đ c tích h p v i các h th ng email đ cho phép s ổ
ổ i đúng ng ớ ể ề ủ ự ụ ầ c g i t ợ
21
ệ ử ầ phân phát các yêu c u thay đ i đi n t
ả
ổ ự Qu n lý s thay đ i
ể ự
ạ ở ộ
c xem l ế ị ữ ượ i quy t đ nh xem chúng có mang l i
ế ượ ậ i b i m t nhóm bên bên ạ ợ i l ổ ứ ch c c và t
• Ban ki m soát s thay đ i nên là m t nhóm đ c l p c a
ổ Ban ki m soát s thay đ i ổ • Các thay đ i nên đ ườ ngoài nh ng ng ể nhu n hay không theo quan đi m chi n l ậ ể ơ h n là theo quan đi m k thu t ự ộ ậ ủ ỹ ổ ể ộ
d ánự
• Ban ki m soát s thay đ i có th g m m t đ i di n c p
ệ ấ ể ồ ự
22
ừ ấ ộ ạ ể ổ ầ phía khách hàng và nhân viên đ u th u cao t
ả
ổ ự Qu n lý s thay đ i
ị
ổ ượ ụ c áp d ng cho các thành
ầ ử ế L ch s ti n hóa ồ ơ ề • Là h s v các thay đ i đ ph n mã l nh
ệ ư ự ổ ượ ạ
• Nó nên l u (nh ng nét chính) s thay đ i đ ự
ố ạ ổ
ự
ệ
ẩ ượ ử ụ ộ c t o ra, ổ m i quan h đ i v i s thay đ i, ai t o ra s thay đ và khi nào nó đ • Nó có th đ ầ • N u m t m u ph n m đ u chu n đ
23
ể ử ộ ữ ệ ố ớ ự ệ ượ c th c hi n ư ộ ể ượ c xem nh m t chú thích trong mã l nh. ở ầ ế ẫ ụ ử ế s ti n hóa, các công c có th x lý nó m t cách t ị c s d ng cho l ch ự ộ đ ng
ả
ổ ự Qu n lý s thay đ i
ị
ủ ủ ầ ầ ộ ị ử ế L ch s ti n hóa • L ch s ti n hóa – Thông tin c a ph n đ u trang c a m t
24
ử ế thành ph nầ
ả
ả
Qu n lý phát hành và phiên b n
ộ ơ ồ ị ể ả ủ ệ • Phát tri n m t s đ đ nh danh cho các phiên b n c a h
• L p k ho ch khi m t phiên b n c a h th ng m i đ
ả ủ ệ ố ớ ượ ế ạ ộ c
ủ ụ ả ả ụ • Đ m b o r ng các công c và th t c qu n lý phiên b n
•
ắ ộ c áp d ng m t cách đúng đ n
25
ủ ệ ố ế ố ả ằ ụ ạ th ngố ậ t o raạ ả ượ ậ đ ớ L p k ho ch phân ph i các phát hành c a h th ng m i
ả
ả
Qu n lý phát hành và phiên b n
ữ
ự
ả
• Nêu s khác nhau gi a phiên b n, phát hành và
ế
ể bi n th ?
26
ả
ả
Qu n lý phát hành và phiên b n
ả
ế
ể
ộ
Phiên b n / Bi n th / Phát hành ả • Phiên b n (version):
ứ
ể ệ
M t th hi n c a h th ng t ch c năng v i các th hi n khác
ủ
ể ệ ư
ề
ứ
ớ
ủ ệ ố ể ệ ủ ệ ố
ườ
ượ
ể ệ ủ ệ ố ớ ệ mà nó khác bi ủ ệ ố c a h th ng theo cách nào đó ệ ố ộ ể ế M t th hi n c a h th ng • Bi n th (variant): ề ứ ố mà nó gi ng v ch c năng nh ng khác v phi ể ệ ch c năng v i các th hi n khác c a h th ng ộ • Phát hành (release): M t th hi n c a h th ng i dùng bên ngoài
ố c phân ph i cho ng
mà nó đ nhóm phát tri nể
27
ả
ả
Qu n lý phát hành và phiên b n
ị
ả ạ
ệ
ậ
ộ
Xác minh phiên b nả ủ ụ • Các th t c xác minh phiên b n nên đ nh nghĩa ả m t cách rõ ràng vi c nh n d ng các phiên b n thành ph nầ ỹ
ầ
ể • Ba k thu t c b n đ xác minh thành ph n
ậ ơ ả – Đánh s phiên b n ả ố – Xác minh d a trên thu c tính ự – Xác minh h ướ
28
ộ ớ ự ng t ổ i s thay đ i
ả
ả
Qu n lý phát hành và phiên b n
ố ơ ồ ấ ử ụ ự ế ế ả ả Đánh s phiên b n ố ơ • S đ đánh s đ n gi n nh t s d ng s ti n hóa tuy n
tính
• V1, V1.1, V1.2, V2.1, v.v ự ế ế • C u trúc ti n hóa th c t
ạ ộ ộ ơ là m t cây hay m t m ng h n là
ấ ộ ự ụ m t s liên t c
• Các tên không có ý nghĩa • S đ đ t tên phân c p đ a đ n ít l
ấ ư ế ơ ồ ặ ỗ ơ ệ i h n trong vi c xác
29
minh phiên b nả
ả
ả
Qu n lý phát hành và phiên b n
ố ả
30
ủ ế ấ ả Đánh s phiên b n ả ố • Đánh s phiên b n – C u trúc ti n hóa c a phiên b n
ả
ả
Qu n lý phát hành và phiên b n
ự ộ
ộ ể ượ ử ụ ể ậ ạ Xác minh d a trên thu c tính • Các thu c tính có th đ c s d ng đ nh n d ng phiên
b nả
• Các thu c tính có th là ngày, ng trình, khách hàng, tr ng thái, v.v
ộ ườ ạ ữ ậ i t o ra, ngôn ng l p
• Cách làm này có th gây ra các v n đ v tính đ n nh t
ể ạ ể
ề ề ể ấ ả ả ượ ấ ọ c ch n đ t ấ ơ t c các phiên
ộ ậ t p các thu c tính ph i đ ả b n có th đ ấ c đ nh danh duy nh t
• Trong th c ti n, m t phiên b n còn c n m t tên k t h p
ế ợ ả ầ ộ
31
ễ ể ượ ị ộ ự ễ ả ể đ tham kh o d dàng
ả
ả
Qu n lý phát hành và phiên b n
ộ
ự ậ ợ ộ ọ ự ủ ộ Xác minh d a trên thu c tính • M t thu n l
ấ
i quan tr ng c a xác minh d a trên thu c ể ỗ ợ tính là nó có th h tr các truy v n. ụ ả ấ ộ ọ ộ ị • Truy v n ch n ra m t phiên b n ph thu c vào các giá tr
32
ộ thu c tính
ả
ả
Qu n lý phát hành và phiên b n
ậ ướ ng t
ạ ợ ổ ượ ự ệ ể c th c hi n đ
Nh n d ng h • Tích h p các phiên b n và các thay đ i đ ả
ị ổ ượ ầ ệ ố • Đ c s d ng cho h th ng h n là cho thành ph n ộ ậ ổ ệ ố c đ ngh có m t t p thay • M i m t thay đ i h th ng đ ệ ự ả c th c hi n cho ơ ượ ề các thay đ i đ
33
ầ ủ ệ ố ổ ớ ự i s thay đ i ả ạ t o ra các phiên b n đó ượ ử ụ ộ ỗ ổ ế ợ đ i k t h p mà nó mô t các thành ph n c a h th ng
ả
ả
Qu n lý phát hành và phiên b n
ả
ả ủ ệ ố
ượ ố ớ đ ộ i khách hàng
• Nhà cung c p s n ph m ph n m m th
ườ ề ầ ẩ
ề ớ
Qu n lý phát hành ệ ố • Phát hành h th ng là m t phiên b n c a h th ng mà nó c phân ph i t ấ ả ỉ ư ng ch đ a ra các ứ ớ phát hành m i cho các n n m i hay thêm các ch c năng m i r t c n thi
• Các h th ng hi n nay th
ượ
ớ ấ ầ ệ ố ặ ế t ệ ậ ườ ng đ ặ ừ c phát hành trên đĩa ể ả trang ố i xu ng t
34
quang ho c các t p tin cài đ t có th t web
ả
ả
Qu n lý phát hành và phiên b n
ấ
• Qu n lý phát hành không nên gi
ể ả ố ề Các v n đ phát hành ớ ủ ệ • Khách hàng có th không mu n b n phát hành m i c a h
ượ ấ ả ậ ậ
ầ ớ ạ ả ử ằ t c các phát s r ng t ữ ấ ả c ch p nh n. T t c nh ng t p tin c n ộ c tái t o khi m t phát hành m i
35
th ngố ả ấ ướ hành tr c đó đ ượ ộ cho m t phát hành nên đ ặ ượ c cài đ t đ
ả
ả
Qu n lý phát hành và phiên b n
ư
ệ ố ộ ả ệ ế ị Đ a ra quy t đ nh phát hành ố ị ẩ • Vi c chu n b và phân ph i m t b n phát hành h th ng
ố ộ
• Các y u t
ổ ứ ậ ng k thu t và t
là m t quy trình t n kém ế ố ư ấ ượ nh ch t l ế ị ệ ộ
36
ộ ỹ ch c tác đ ng ế ủ ệ ư đ n vi c quy t đ nh khi nào đ a ra m t phát hành c a h ớ ố th ng m i
ả
ả
Qu n lý phát hành và phiên b n
37
ả
ả
Qu n lý phát hành và phiên b n
• Nh ng thành ph n đi kèm khi phát hành m t h th ng?
38
ộ ệ ố ữ ầ
ả
ả
Qu n lý phát hành và phiên b n
ệ ố ỉ ộ ậ ươ ể ự Phát hành h th ng • Không ch là m t t p các ch ng trình có th th c thi
đ cượ
ồ
ứ ậ ấ ị ượ ể • Mà có th bao g m • Các t p tin c u hình đ nh nghĩa cách th c phát hành đ c
ậ
ệ ố ệ ể
ặ ụ ể ộ ự ấ c u hình cho m t s cài đ t c th ự ậ ữ ệ ầ • Các t p tin d li u c n cho s v n hành h th ng ộ ộ ặ ươ ng trình cài đ t hay m t script ti n ích đ cài • M t ch ầ ứ ặ ệ ố đ t h th ng lên ph n c ng đích ạ ấ ệ ử d ng gi y hay d ng đi n t li u
39
ư ệ ở ạ • Các t ả • Đóng gói và qu ng cáo liên quan
ả
ả
Qu n lý phát hành và phiên b n
ự ư ệ
ụ ể ủ ộ ậ ồ i các phiên b n c th c a các b ph n mã ngu n
ự T li u hóa s phát hành • Ghi l đ
ủ ồ ấ ả ữ ệ ạ ả ể ạ ượ ử ụ c s d ng đ t o ra mã th c thi ự ả ư • L u b n sao c a mã ngu n, mã th c thi, t t c d li u và
ấ các t p tin c u hình
ậ ạ ả ộ
• Ghi l ị d ch và nh ng công c đ m mề
40
ữ ệ ề ủ ụ ượ ử ụ ự ầ ư ệ i phiên b n c a h đi u hành, th vi n, b biên ể c s d ng đ xây d ng ph n
ệ ố
ự
Xây d ng h th ng
ế ị
• Xây d ng h th ng là quy trình biên d ch và liên k t các ng trình mà nó th c
ự ậ ươ ự ề
ệ ố ầ ộ ấ ộ ộ b ph n ph n m m vào m t ch ụ ể ệ hi n trên m t c u hình đích c th
• Các h th ng khác nhau đ ề
ệ ố ự ừ ế ợ c xây d ng t các k t h p
ề ậ ộ khác nhau v các b ph n ph n m m
• Qui trình này hi n nay luôn đ
ệ ỗ ợ ở ượ ầ ượ ụ c h tr b i các công c
41
ự ộ t đ ng
ệ ố
ự
Xây d ng h th ng
42