Mục Lục
Chương 1 Mở đầu .1
1.1 Quản lýcấu hình phần mềm trên thếgiới và ởViệt Nam .1
1.2 Các công cụhỗtrợquản lýcấu hình hiện tại.2
1.3 Mục tiêu đềtài.2
Chương 2 Tổng quan vềquản lýcấu hình phần mềm .4
2.1 Khái niệm .4
2.2 Nguồn gốc hình thành của quản lýcấu hình.5
2.3 Phạm vi vànhiệm vụcủa quả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 hại .12
2.3.4 Những bẫy kết hợp với phạm vi .16
2.3.5 Cách xứlý các thứkhác ởbên ngoài .16
2.4 Các vai tròtrong quản lýcấu hình phần mềm .17
2.4.1 Con người vàquản lýcấu hình .17
2.4.2 Các vai tròtrong quản lýcấu hình .18
2.4.3 Các vai tròtrong tổchức.23
2.4.4 Các vai tròliên quan đến đềán.28
2.4.5 Các vai tròbên ngoài .35
2.5 Dữliệu cho quản lýcấu hình .36
2.5.1 Cái gì được đưa vào quản lýcấu hình .36
2.5.2 Những điều cần biết vềmột thành phần cấu hình.44
2.6 Hệthống quản lýcấu hình phần mềm .53
2.6.1 Khái niệm:.53
2.6.2 Mục tiêu .54
2.6.3 Lợi ích .54
2.6.4 Các tiến trình con trong quản lýcấu hình phần mềm .54
Chương 3 Quản lýcấu hình phần mềm trong CMM & CMMI.56
3.1 Mô hình trưởng thà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 Quản lýcấu hình phần mềm trong CMM version 1.1 .57
3.3 Quả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 Quản lýcấu hình trong CMMI .60
Chương 4 Vấn đề định danh, quản lýphiên bản vàcác giải phá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 pháp tiền tốvàhậu tố.77
4.1.3 Nhận xét chung .79
4.2 Xác định và định danh phiên bả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 Các công cụhỗtrợquả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 Mục đích .82
5.3.2 Cấu trúc của chương trình.83
5.4 CVS vàCVSNT .84
5.4.1 Mụ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 tảyêu cầu của hệthống mới .95
6.3 Mô hình UseCase .99
6.4 Đặc tả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ô hình lớp đối tượng .123
6.5.4 Mô hình dữliệu.144
6.6 Mô hì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
6.6.10 Xem lịch sửcủa Item .164
Chương 7 Tổng kết .165
7.1 Tự đánh giá.165
7.2 Hướng phát triển .
184 trang |
Chia sẻ: netpro | Lượt xem: 3471 | 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
ration
management
Các trạng thái của một đơn vị có thể :
• Bận: đảm bảo quản lý phiên bản, không một ai có thể tình cờ bắt đầu thay
đổi cùng trên một file mã nguồn
• Lưu: Chỉ ra phiên bản đang thuộc riêng về nhà phát triển
• Đề xuất (Proposed): chỉ ra phiên bản đang trong trạng thái có ích với các
nhà phát triển khác. Chỉ những phiên bản với trạng thái (“proposed”) hay
cao hơn có thể dùng chính thức trong các unit tests
• Xuất (Published): phiên bản đã được test (unit test) và được chấp nhận
• Truy cập(Accessed): Phiên bản đã được chấp nhận chính thức sau lần kiểm
tra tích hợp
• Frozen: chỉ ra phiên bản là một phần của release chính thức
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 50
2.5.2.3 Siêu dữ liê ̣u cho viê ̣c phân trách nhiê ̣m
Việc phân trách nhiệm chỉ ra một người có quyền làm gì và đã làm gì với các
thực thể cấu hình. Việc phân trách nhiệm có thể gồm các dữ liệu như hình dưới
Hình 2-10 Siêu dữ liệu cho việc phân trách nhiệm
Thông thường, một đề án phần mềm có 3 loại người chịu trách nhiệm mô tả
bằng mối quan hệ “được tạo ra bởi”, “dưới sự quản lý của” và “được chấp thuận
bởi”.
Một hợp đồng cũng đòi hỏi nhóm đại diện của khách hàng chịu trách nhiệm về
tài liệu đăc tả yêu cầu cũng như toàn hệ thống
Nhà sản xuất
Là người chịu trách nhiệm tạo ra thực thể và đặt nó vào quản lý cấu hình. Nhà
sản xuất có thể là người tạo ra phiên bản mới dựa vào quản lý yêu cầu. Đối với mã
nguồn, nhà sản xuất thường là người lập trình. Đối với các tài liệu, nhà sản xuất là
tác giả, các tài thiệu về thiết kế nhà sản xuất là nhà thiết kế, các kế hoạch của đề án
nhà sản xuất là các nhà quản lý đề án.
Người giữ tất cả các trách nhiệm
Người giữ tất cả các trách nhiệm có trách nhiệm sau cùng với việc sửa lỗi sản
phẩm và các bản giao. Người này có thể là người quản lý đề án hoặc là một nhóm
quản lý dưới quyền người quản lý đề án hoặc người chịu trách nhiệm kiểm thử.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 51
Người chịu trách nhiệm phê duyệt
Người chịu trách nhiệm phê duyệt có thể là nhà sản xuất trong các hoạt động
quản lý cấu hình sớm hoặc không chính thức. Người này có thể là người chịu trách
nhiệm về chất lượng trong quản lý cấu hình với mức độ hình thức cao, hoặc là một
nhóm các nhà thầu khoán khi quản lý cấu hình thực hiện với mức độ hình thức cao.
Người chịu trách nhiệm phê quyệt cũng có thể có vai trò như ban quản lý cấu hình,
chịu trách nhiệm phê duyệt tất cả những thay đổi đối với một thực thể cấu hình và
quyết định xem một thực thể đã sẵn sàng được quản lý cấu hình hay không.
Quyền sở hữu
Mô tả người có thể rút một thực thể để sản xuất và có thể làm thay đổi thực
thể đó. Nhưng ban quản lý cấu hình sẽ quyết định ai có thể làm thay đổi một thực
thể (tạo ra phiên bản mới) khi thực thể được đặt dưới sự quản lý cấu hình.
2.5.2.4 Siêu dữ liê ̣u chi ̉ mối quan hê ̣ đê ́n các thực thê ̉ cấu hi ̀nh kha ́c
Thực tế, tất cả các thực thể cấu hình có một hay nhiều quan hệ với các thực
thể khác. Các mối quan hệ sẽ thường được mô tả bởi các dữ liệu ở hình dưới.
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
Theo vết
Thông tin để theo vết đối với một thực thể cấu hình cung cấp lý do tồn tại của
thực thể… Theo dõi thực thể từ những hoạt động trong quá trình phát triển của thực
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 52
thể cấu hình. Thông thường, kế hoạch đề án sẽ chỉ ra các thực thể cấu hình nào theo
dõi lẫn nhau: Theo dõi có thể thực thiện theo mô hình V
• Yêu cầu phần mềm dựa vào yêu cầu của người dùng
• Việc chấp nhận đặc tả test dựa vào những yêu cầu người dùng
• Thiết kế kiến trúc dựa vào yêu cầu phần mềm
• Chi tiết thiết kế dựa vào thiết kế kiến trúc và yêu cầu phần mềm ,v.v..
Đây chỉ là một phần nhỏ các thông tin theo vết có thể của sản phẩm. Nhìn
chung, nó có thể theo dõi tất cả các thực thể cấu hình để định trước các thực thể cấu
hình. Hình dưới chỉ ra theo dõi một đặc tả yêu cầu và một đặc tả kiểm tra hệ thống.
Hình 2-12 Ví dụ của việc theo vết
Đăng ký theo vết
Việc theo dõi thường là quan hệ nhiều nhiều. Để theo dõi thì thực thể cấu hình
phải có định danh duy nhất không thay đổi, dễ tham khảo và có thể truy cập được.
Việc theo dõi phải đăng ký theo cách báo cáo dễ để theo dõi cả hai phía. Có
nghĩa là nó có thể tìm ra các testcase đối với một yêu cầu cụ thể và các yêu cầu
phần mềm cho một testcase nào.
Phiên bản mới của thực thể cấu hình sẽ thường kế thừa các theo dõi của các
phiên bản trước. Việc theo dõi sẽ được kiểm soát, vì thế việc theo dõi được lưu trữ
lại và vẫn còn đúng với tất cả các phiên bản khác.
Tầm quan trọng của việc theo vết
Việc theo dõi là một phần đăng ký thường bị bỏ quên, vì nó là nhiệm vụ lớn
và hầu như không khả thi. Việc theo vết khó thực nếu bắt đầu theo vết ở giữa đề án.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 53
Tuy nhiên, điều này có thể thực hiện được nhờ vào công nghệ đảo để tạo ra thông
tin theo dõi cho các thực thể cấu hình
Việc theo dõi thì quan trọng đối với người tạo ra thực thể cấu hình và đặc biệt
đối với những ai thay đổi chúng. Chất lượng sẽ được cải tiến khi người ta hiểu mối
quan hệ giữa các thực thể trong hệ thống.
Việc theo vết cũng được dùng để tìm ra kiểm tra kép việc thiết kế. Nếu một
yêu cầu theo vết với số lượng lớn các thực thể thiết kế, nó có thể là một dấu hiệu
thiết kế quá phức tạp và cần phải xem xét lại
Tạo ra với
Nói lên công cụ nào dùng để tạo nên thực thể. Không phải lúc nào cũng cần
đặt công cụ dưới sự quản lý cấu hình hoặc công cụ nào tạo ra thực thể nào. Với các
thực thể trong một bản phân phối, nên chỉ ra cái gì được dùng để nối kết các thực
thể cấu hình thành phiên bản để sử dụng.
Dẫn xuất từ
Mô tả lịch sử của thực thể cấu hình, phiên bản được thay đổi do phiên bản
trước nào. Nó chỉ xảy ra nếu có sự thay đổi phiên bản.
Bao gồm
Chỉ có các delivery mới bao gồm các thực thể cấu hình. Một module mã
nguồn không bao gồm các thực thể cấu hình khác, nhưng một yêu cầu phát hành
của phần mềm bao gồm bản kế hoạch của đề án, đặc tả người dùng, đặt tả yêu cầu
phần mềm và kế hoạch kiểm thử hệ thống.
2.6 Hệ thô ́ng qua ̉n ly ́ câ ́u hi ̀nh phâ ̀n mê ̀m
2.6.1 Kha ́i niê ̣m:
Hê ̣ thống quản lý câ ́u hình phâ ̀n mềm của một tổ chức lưu giữ ca ́c thông tin
quan trọng vê ̀ viê ̣c pha ́t triê ̉n sa ̉n phâ ̉m, triển khai va ̀ qua ̉n lý tiê ́n trình, va ̀ giữ la ̣i
những kê ́t qua ̉ có thê ̉ sự dụng la ̣i sau na ̀y.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 54
2.6.2 Mục tiêu
Hê ̣ thô ́ng qua ̉n lý câ ́u hình phâ ̀n mềm cần được thiết kê ́ đê ̉ kiê ̉m sóat sô ́ lượng
lớn ca ́c sưu liê ̣u được pha ́t sinh từ nhiê ̀u người trong một dự a ́n. Nhằm mục đích
tra ́nh la ̃ng phí chi phí va ̀ đa ̉m ba ̉o không bị trùng lắp khi tiê ́n ha ̀nh tích hợp hê ̣
thô ́ng.
2.6.3 Lợi ích
Mô ̣t sô ́ lợi ích ma ̀ hê ̣ thống qua ̉n lý câ ́u hình có thê ̉ đem la ̣i la ̀:
• Qua ̉n lý tính toàn vẹn của sa ̉n phâ ̉m.
• Đa ̉m ba ̉o tính đâ ̀y đủ va ̀ chính xa ́c của sa ̉n phâ ̉m.
• Cung câ ́p môi trường ổn định đê ̉ pha ́t triê ̉n sa ̉n phâ ̉m.
• Ha ̣n chê ́ thay đổi yêu câ ̀u dựa trên nguyên tắc của dự a ́n.
• Kiê ̉m sóat những sưu liê ̣u bị thay đổi thông qua tra ̉ lời câu ho ̉i: ta ̣i sao, khi
na ̀o, va ̀ ai đa ̃ thay đổi.
2.6.4 Ca ́c tiến tri ̀nh con trong qua ̉n ly ́ cấu hi ̀nh phâ ̀n mê ̀m
No ́i chung, một hê ̣ thô ́ng câ ́u hình phâ ̀n mềm cụ thê ̉ se ̃ liên quan đê ́n một gia ̉i
pha ́p va ̀ qui định qua ̉n lý câ ́u hình phâ ̀n mềm được công bố trong sô ̉ tay qua ̉n lý câ ́u
hình của công ty. Các giải pha ́p va ̀ qui định na ̀y co ́ thê ̉ xuâ ́t pha ́t từ ca ́c chuâ ̉n tô ̉ng
qua ́t IEEE 828-1983, ISO 9000, CMM , CMMI ...
Hê ̣ thống qua ̉n lý câ ́u hình bao gồm những họat động chính sau:
Tiê ́n trình lâ ̣p kê ́ hoa ̣ch qua ̉n lý câ ́u hình chi tiê ́t cho sa ̉n phâ ̉m se ̃ pha ́t triê ̉n: là
tiê ́n trình na ̀y thiê ́t lâ ̣p viê ̣c qua ̉n lý câ ́u hình, ca ́c thực thể se ̃ được qua ̉n lý trong hê ̣
thô ́ng qua ̉n lý câ ́u hình phâ ̀n mê ̀m va ̀ vai trò của ca ́c thành viên trong hê ̣ thô ́ng phâ ̀n
mê ̀m cho một đê ̀ a ́n cụ thê ̉.
Tiê ́n trình qua ̉n lý những thay đổi vê ̀ câ ́u hình phâ ̀n mềm: la ̀ tiê ́n trình bao
gồm vịêc phân tích ca ́c thay đổi, đa ́nh gia ́ phí tổn va ̀ theo dõi “vê ́t” của thay đổi.
Tiê ́n trình qua ̉n lý phiên bản của sa ̉n phâ ̉m: tiến trình định nghĩa, theo dõi va ̀
kiê ̉m sóat ca ́c phiên bản kha ́c nhau của một hê ̣ thống phâ ̀n mềm.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 - Tổng quan vê ̀ qua ̉n lý câ ́u hình phâ ̀n mềm
Trang 55
Tiê ́n trình tích hợp sa ̉n phâ ̉m từ ca ́c thành tố: la ̀ tiê ́n trình tổ hợp ca ́c thành tố
của hê ̣ thô ́ng tha ̀nh một chương trình có thê ̉ thực hiện trên một môi trường câ ́u hình
cụ thê ̉. Với hê ̣ thống lớn đây la ̀ một tiê ́n trình quan trọng trong qua ̉n lý câ ́u hình.
Hình 2-13 Sơ đồ các tiến trình con trong quản lý cấu hình
Ca ́c tiến trình trên liên quan đê ́n ca ́c thành viên tham gia vào quá trình pha ́t
triê ̉n phâ ̀n mềm va ̀ được hỗ trợ bởi các công cụ pha ́t triê ̉n phâ ̀n mê ̀m ở mức tự động
hoặc ba ́n tự động.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 56
Chương 3 Qua ̉n ly ́ câ ́u hình phâ ̀n mềm trong
CMM & CMMI
3.1 Mô hi ̀nh trưởng tha ̀nh
Capability Maturity Model (CMM) version 1.1 là mô hình được sử dụng rộng
rãi nhất. Nó được phát triển và được hỗ trợ bởi viện Công Nghệ Phần mềm ở đại
học Carnegie Mellon. Version 1.0 được phát hành vào 1991. Version 1.1 được phát
hành vào 1993. Version 2.0 vẫn đang thực hiện, nhưng có vẻ version này được thay
thế bởi CMMI. Do đó, ta sẽ đề cấp đến quản lý cấu hình trong CMM version 1.1 và
CMMI
3.2 CMM version 1.1
3.2.1 Mức độ trưởng thành của CMM Version 1.1
Level 1:
Khởi động
Level 2:
Lặp lại
Quản lý cấu hình phần mềm
Quản lý chất lượng phần mềm
Quản lý các hợp đồng phụ
Theo dõi và giám sát đề án phần mềm
Lập kế hoạch cho đề án phần mềm
Những yêu cầu về quản lý
Level 3:
Được định nghĩa
Công tác xem xét
Sự hợp các giữa các nhóm
Sản phẩm phần mềm
Quản lý phần mềm tích hợp
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 57
Chương trình huấn luyện
Định nghĩa tiến trình
Tập trung cũng cố tiến trình
Level 4:
Quản lý
Quản lý thay đổi quy trình
Quản lý thay đổi công nghệ
Ngăn chặn lỗi
Level 5:
Tối ưu hoá
Quản lý chất lượng phần mềm
Quản lý quy trình chất lượng
Bảng 3-1 Mức độ trưởng thành của CMM
Quản lý cấu hình là một vùng tiến trình chính ở mức phát triển mức 2. Để đạt
được chuẩn 2, công ty phải đạt những mục tiêu trong tất cả các vùng tiến trình chính
ở mức phát triển cấp 2, bao gồm quản lý cấu hình. Những mục đích để quản lý cấu
hình trong CMM version 1.1 là:
Mục tiêu 1: Lên kế hoạch những hoạt động Quản lý cấu hình
Mục tiêu 2: Chỉ rõ và kiểm soát những công việc để làm ra sản phẩm.
Mục tiêu 3: Những thay đổi của sản phẩm công nghệ phần mềm được kiểm
soát
Mục tiêu 4: Những nhóm và những cá nhân ảnh hưởng sẽ được thông báo về
trạng thái và nội dung của các cấu hình cơ sở (baselines) của phần mềm
3.2.2 Qua ̉n ly ́ cấu hi ̀nh phâ ̀n mê ̀m trong CMM version 1.1
3.2.2.1 Mục đích
Mục đích của Quản lý cấu hình là thiết lập và lưu lại sự tích hợp của những
sản phẩm thông qua quy trình phát triển phần mềm. Hệ thống Quản lý cấu hình là
phần tích hợp hầu hết các quy trình phần mềm và quy trình quản lý.
3.2.2.2 Các hoạt động của qua ̉n ly ́ cấu hi ̀nh trong CMM Version 1.1
Hoạt động 1:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 58
Một kế hoạch Quản lý cấu hình được chuẩn bị cho mỗi đề án phần mềm tùy
vào một tài liệu quy trình
Hoạt động 2:
Một kế hoạch về Quản lý cấu hình được chấp nhận và ghi thành tài liệu dùng
để làm nền tảng để thực hiện những hoạt động về Quản lý cấu hình
Hoạt động 3:
Một hệ thống thư viện quản lý cấu hình được thiết lập như là một kho chứa
những cấu hình cơ sở của phần mềm
Hoạt động 4:
Chỉ ra và quản lý những công việc để tạo sản phẩm
Hoạt động 5:
Thay đổi yêu cầu và những báo cáo lỗi đối với những thực thể cấu hình được
khởi tạo, lưu lại, kiểm tra, chấp thuận, và theo dõi dựa vào tài liệu quy trình
Hoạt động 6:
Thay đổi các cấu hình cơ sở sẽ được kiểm soát, theo dõi theo tài liệu quy trình
Hoạt động 7:
Tạo ra những sản phẩm từ thư viện cấu hình cơ sở của phần mềm và những
bản phát hành sẽ được kiểm soát theo một tài liệu quy trình
Hoạt động 8:
Trạng thái của thực thể cấu hình/ bộ cấu hình được lưu lại theo một tài liệu
quy trình
Hoạt động 9:
Những tài liệu báo cáo chuẩn về những hoặc động Quản lý cấu hình và nội
dung của cấu hình cơ sở phần mềm được phát triển và giao cho những nhóm và
những cá nhân có liên quan
Hoạt động 10:
Kiểm tra cấu hình cơ sở của phần mềm theo một tài liệu quy trình
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 59
3.3 Qua ̉n ly ́ câ ́u hi ̀nh trong CMMI
3.3.1 Các mức trưởng thành của CMMI
Hình 3-1 các mức trưởng tha ̀nh của CMMI
Mức trưởng thành Vùng tiến trình
Phân tích nguyên nhân và giải pháp
5
Tối ưu hoá
Đổi mới tiến trình công nghệ
Hiệu năng tiến trình 4
Được quản lý nhờ vào định lượng Quản lý đề án định lượng
Phát triển yêu cầu
Giải pháp kỹ thuật
Tích hợp sản phẩm
Kiểm tra
Xác nhận
Tập trung cũng cố tiến trình
Định nghĩa tiền trình
Huấn luyện
Quản lý đế án tích hợp
3
Được định nghĩa
Tích hợp nhóm
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 60
Quản lý rủi ro
Tích hợp quản lý với nhà cung cấp
Phân tích quyết định và giải pháp
Tích hợp môi trường tổ chức
Quản lý yêu cầu
Hoạch định đề án
Theo dõi và kiểm soát đề án
Quản lý hợp đồng với nhà cung cấp
Đo lường và phân tích
Bảo đảm chất lượng sản phẩm và tiến trình
2
Được quản lý
Quản lý cấu hình
1
Khởi động
Bảng 3-2 Các mức trưởng thành và các vùng tiến trình của CMMI
3.3.2 Qua ̉n ly ́ cấu hi ̀nh trong CMMI
3.3.2.1 Mục đích
Mục đích của Quản lý cấu hình là thiết lập và duy trì tính toàn vẹn của các sản
phẩm kết xuất nhờ vào việc định danh cấu hình, kiểm soát cấu hình, xác định trạng
thái cấu hình và kiểm tra cấu hình.
3.3.2.2 Ca ́c hoạt động
• Chỉ ra cấu hình của một sản phẩm được chọn bao gồm cấu hình cơ sở tại
thởi điểm chỉ ra
• Kiểm soát thay đổi đối với những thành phần trong cấu hình
• Xây dựng hoặc cung cấp những đặc tả để xây dựng sản phẩm từ hệ thống
Quản lý cấu hình
• Lưu trữ sự tích hợp các cấu hình cơ sở
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 61
• Cung cấp trạng thái chính xác và cấu hình hiện tại cho những nhà phát triển
phần mềm, những người dùng cuối, khách hàng. Công việc được kiểm soát
dưới sự quản lý cấu hình bao gồm những sản phẩm được giao cho khách
hàng, chỉ ra các sản phẩm nội bộ bên trong, những sản phẩm thu được,
những công cụ và những thành phần khác được dùng để tạo và mô tả những
sản phẩm.
Đối với gia công phần mềm
Sản phẩm làm ra cần được kiểm soát cấu hình bởi cả nhà cung cấp và đề án.
Cần phải thiết lập trong hợp đồng về việc thực hiện quản lý cấu hình. Cần phải đưa
ra, duy trì các phương pháp phù hợp để đảm bảo về tòan vẹn dữ liệu
Những ví dụ về những công việc tạo nên sản phẩm được đặt dưới sự quản lý
cấu hình gồm:
• Kế hoạch
• Mô tả qui trình
• Những yêu cầu
• Thiết kế dữ liệu
• Những bản vẽ
• Đặc tả sản phẩm
• Mã nguồn
• Trình biên dịch
• File dữ liệu của sản phẩm
• Tài liệu kỹ thuật về sản phẩm
3.3.2.3 Những vùng tiê ́n tri ̀nh liên quan
Liên quan đến vùng tiến trình Lập kế hoạch đề án gồm những thông tin liên
quan đến kế hoạch phát triển, cấu trúc phân chia công việc. Điều này thuận lợi cho
việc quyết định cần theo dõi những thành phần nào cần quản lý cấu hình
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 62
Liên quan đến vùng tiến trình phân tích nguyên nhân và giải pháp để tìm ra
thêm thông tin về phương pháp sử dụng để phân tích ảnh hưởng của thay đổi yêu
cầu và phương pháp sử dụng khi việc ước lượng thay đổi
Liên quan đến vùng tiến trình Theo dõi và kiểm soát đề án để có nhiều
thông tin về việc phân tích thực hiện và những hành động sửa chữa
3.3.2.4 Ca ́c mục tiêu chuyên biê ̣t
SG 1 Thiết lập các nhóm đối tượng cấu hình cơ sở
Chỉ ra các công việc nào cần được xác lập cấu hình cơ sở
SG 2 Theo dõi và kiểm soát những thay đổi
Những thay đổi về sản phẩm phải được kiểm soát của Quản lý cấu hình, chúng
được lưu vết và được kiểm soát
SG 3 Thiết lập tính tòan vẹn cấu hình
Ghi nhận và lưu sự tòan vẹn của các cấu hình cơ sở
3.3.2.5 Ca ́c mục tiêu tổng qua ́t
GG 1 Đạt những mục tiêu cụ thể
GG 2 Chuẩn hoá một quy trình quản lý
GG 3 Chuẩn hoá một định nghĩa quy trình
GG 4 Chuẩn hoá một quy trình quản lý định lượng
GG 5 Chuẩn hoá một quy trình lạc quan
3.3.2.6 Mối quan hê ̣ giữa mục tiêu và thực tiễn
SG 1 Thiết lập các cấu hình cơ sở
• SP 1.1-1 Chỉ ra các thực thể cấu hình
• SP 1.2-1 Thiết lập một hệ thống quản lý cấu hình
• SP 1.3-1 Tạo hoặc phát hành một cấu hình cơ sở
SG 2 Lưu vết và kiểm soát thay đổi
• SP 2.1-1 Lưu vết các thay đổi yêu cầu
• SP 2.2-1 Điều khiển các thành phần quản lý cấu hình
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 63
SG 3 Thiết lập sự tòan vẹn
• SP 3.1-1 Chuẩn bị hồ sơ Quản lý cấu hình
• SP 3.2-1 Thực hiện kiểm tra cấu hình
GG 1 Đạt những mục đích cụ thể
• GP 1.1 Thực hiện những thói quen cơ bản
GG 2 Thể chế hoá một quy trình quản lý
• GP 2.1 Thiết lập một quy định có tổ chức
• GP 2.2 Lên kế hoạch quy trình
• GP 2.3 Cung cấp những tài nguyên
• GP 2.4 Gián trách nhiệm
• GP 2.5 Huấn luyện con người
• GP 2.6 Quản lý cấu hình
• GP 2.7 Xác định những người thầu khoán có liên quan
• GP 2.8 Quản lý và kiểm soát quy trình
• GP 2.9 Đánh giá một cách khách quan sự tham gia
• GP 2.10 Kiểm tra trạng thái với cấp độ quản lý cao hơn
GG 3 Chuẩn hoá việc định nghĩa quy trình
• GP 3.1 Thiết lập một quy trình định nghĩa
• GP 3.2 Thu thập các thông tin cải tiến
GG 4 Chuẩn hoá một quy trình quản lý định lượng
• GP 4.1 Thiết lập mục tiêu định lượng quy trình
• GP 4.2 Ổn định hoá các hiệu năng tiến trình phụ
GG 5 Chuẩn hoá một quy trình khách quan
• GP 5.1 Đảm bảo cải tiến liên tục quy trình
• GP 5.2 Sửa nguyên nhân gốc gây ra lỗi
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 64
3.3.2.7 Ca ́c thực tiễn cụ thê ̉ trong từng mục đích
SG 1 Thiết lập các cấu hình cơ sở
SP 1.1 – 1 Xác định các thực thể cấu hình
SP 1.2 – 1 Thiết lập hệ thống quản lý cấu hình
SP 1.3 – 1 Tạo lập các nhóm cấu hình cơ sở và phát sinh sản phẩm
chuyển giao
Bảng 3-3 Danh sách các thực tiễn cho cho SG 1
SG 2 Theo vết và kiểm soát thay đổi
SP 2.1 – 1 Theo dõi các yêu cầu thay đổi
SP 2.2 – 1 Kiểm soát thay đổi thực thể cấu hình
Bảng 3-4 Danh sách các thực tiễn cho cho SG 2
SG 3 Thiết lập sự toàn vẹn cấu hình
SP 3.1 – 1 Thiết lập hồ sơ quản lý cấu hình
SP 3.2 – 1 Thực hiện kiểm tra quản lý cấu hình
Bảng 3-5 Danh sách các thực tiễn cho cho SG 3
SG 1 Thiết lập cấu hình cơ sở
Chỉ ra những sản phẩm cấu hình cơ sở
Thiết lập cấu hình cơ sở, theo dõi và kiểm soát những thay đổi để duy trì cấu
hình cơ sở, thiết lập sự tích hợp, ghi tài liệu và kiểm tra sự tích hợp của các cấu hình
cơ sở
SP 1.1-1 Chỉ ra những thực thể quản lý cấu hình
Chỉ ra những thực thể cấu hình, những thành tố, và những công việc liên quan
được kiểm soát bởi quản lý cấu hình
Định danh cấu hình được chọn, tạo ra, đặc tả như sau:
• Sản phẩm giao cho khách hàng
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 65
• Chỉ rõ những công việc thực hiện bên trong
• Sản phẩm đạt được
• Những công cụ
Những thành phần khác được dùng để tạo và mô tả những công việc để tạo
nên sản phẩm
Những thực thể cấu hình đặt dưới sự kiểm soát cấu hình sẽ bao gồm những
đặc tả và những tài liệu giao tiếp nêu lên định nghĩa những yêu cầu của sản phẩm.
Những tài liệu khác tuỳ thuộc vào mức độ quan trọng của nó vào sản phẩm cũng có
thể bao gồm trong quản lý cấu hình như kết qủa kiểm tra.
Một “thực thể cấu hình” là một thực thể được thiết kế để quản lý cấu hình, nó
có thể bao gồm nhiều sản phẩm liên quan tới một cấu hình cơ sở. Nhóm logic này
cung cấp sự định danh ra và điều khiển sự truy cập. Sự lựa chọn công việc để quản
lý cấu hình nên dựa trên một tiêu chuẩn được thiết lập trong khi lập kế hoạch
Typical Work Products
Chỉ ra những thực thể cấu hình
Subpractices
Chọn những thực thể cấu hình và sản phẩm dựa trên tiêu chuẩn mô tả trên tài
liệu
Ví dụ tiêu chuẩn chọn những thực thể cấu hình vào những công việc theo cấp
thích hợp như sau:
• Sản phẩm công việc có thể được sử dụng bởi hai hay nhiều nhóm.
• Sản phẩm công việc luôn bị thay đổi vì lỗi hoặc thay đổi yêu cầu.
• Sản phầm công việc thì phụ thuộc lẫn nhau, do đó, khi thay đổi một trong
những thành phần, sẽ làm thay đổi những thành phần khác.
• Sản phẩm công việc là tiêu chuẩn để đánh giá đề án
Những ví dụ về sản phẩm có thể là thành phần của quản lý cấu hình bao gồm:
• Những định nghĩa quy trình
• Những yêu cầu
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 66
• Thiết kế
• Kế hoạch kiểm thử và quy trình kiểm thử
• Kết qủa kiểm tra
• Những mô tả giao tiếp
+ Gán định danh duy nhất cho những đối tượng quản lý cấu hình
+ Đặc tả những tính chất quan trọng của mổi thực thể cấu hình
Ví dụ những tính chất của thực thể cấu hình bao gồm tác giả, tài liệu, loại file,
ngôn ngữ lập trình, những file mã nguồn
+ Đặc tả khi thực thể cấu hình đặt dưới sự quản lý cấu hình
Những ví dụ để quyết định khi nàp đặt quản lý cấu hình cho công việc:
• Trạng thái trong quy trình phát triển
• Khi sản phẩm sẵn sàng cho việc kiểm thử
• Mức độ kiểm soát mong muốn trên công việc
• Giới hạn về chi phí và thời gian
• Những yêu cầu khách hàng
• Chỉ người chịu những trách nhiệm đối với mỗi thành phần cấu hình
SP 1.2-1 Thiết lập một hệ thống quản lý cấu hình
Thiết lập và bảo trì cấu hình và thay đổi hệ thống quản lý để đìều khiển công
việc
Hệ thống quản lý cấu hình bao gồm kho lưu trữ, thủ tục, và những công cụ
truy cập vào các đối tượng cấu hình
Thay đổi hệ thống quản lý bao gồm kho lưu trữ, thủ tục, và những công cụ để
lưu lại và truy cập thay đổi yêu cầu
Typical Work Products
Hệ thống quản lý cấu hình với các công việc hỗ trợ
Hệ thống quản lý cấu hình truy cập vào các thủ tục điều khiển
Thay đổi cơ sở dữ liệu yêu cầu
Subpractices
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 - Qua ̉n lý câ ́u hình phâ ̀n mềm trong CMM & CMMI
Trang 67
Thiết lập một cơ chế quản lý cấu hình nhiều cấp
Ví dụ những tình huống quản lý nhiều bao gồm:
• Nhiều cấp quản lý tại những thời điểm khác nhau trong vòng đời của đề án
( kiểm soát chặt chẽ hơn khi sản phẩm sắp hòan thành)
• Những thay đổi trong các cấp cần quản lý đối với nhiều loại hệ thống (hệ
thống chỉ gồm phần mềm và hệ thống bao gồm phần cứng và phần mềm)
• Những khác biệt giữa các cấp cần quản lý phải thoả mãn yêu cầu bảo mật,
yêu cầu an tòan đối với những thực thể cấu hình
Lưu trữ và phục hồi những thực thể cấu hình trong hệ thống quản lý cấu hình
Những ví dụ hệ thống quản lý cấu hình bao gồm:
• Hệ thống động (hoặc hệ thống phát triển) bao gồm các thành phần hiện tại
đang được tạo ra hoặc kiểm tra. Chúng đang trong sự quản lý của các nhà
developer và kiểm soát bới các developer. Thành phần cấu hình trong cấu
hình động là kiểm soát phiên bản
• Hệ thống quản lý chính bao gồm những cấu hình cơ sở hiện tại, và thay đổi
chúng. Thành phần cấu hình trong một hệ thống lớn đặt dưới sự quản lý cấu
hình hòan chỉnh như được mô tả ở vùng tiến trình
• Những hệ thống bao gồm đạt những phiên bản phát hành cấu hình cơ sở để
sử dụng. Những hệ thống tĩnh được đặt dưới
Các file đính kèm theo tài liệu này:
- 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.pdf