CMM là gì?
Mô hình trưởng thành khả năng được sử dụng như một tiêu chuẩn để đo lường mức độ trưởng thành của quy trình phần mềm của một tổ chức.
CMM được phát triển tại Viện kỹ thuật phần mềm vào cuối những năm 80. Nó được phát triển là kết quả của một nghiên cứu do Không quân Hoa Kỳ tài trợ như một cách để đánh giá công việc của các nhà thầu phụ. Sau đó, dựa trên mô hình CMM-SW được tạo ra vào năm 1991 để đánh giá mức độ trưởng thành của phát triển phần mềm, nhiều mô hình khác được tích hợp với CMM-I.
Trong hướng dẫn này, chúng ta sẽ học,
- Các cấp độ của mô hình trưởng thành năng lực (CMM) là gì?
- Điều gì xảy ra ở các cấp độ CMM khác nhau?
- Mất bao lâu để triển khai CMM?
- Cấu trúc bên trong của CMM
- Hạn chế của Mô hình CMM
- Tại sao sử dụng CMM?
Các cấp độ của mô hình trưởng thành năng lực (CMM) là gì?
- Ban đầu
- Lặp lại / được quản lý
- Xác định
- Được quản lý định lượng
- Tối ưu hóa
Điều gì xảy ra ở các cấp độ CMM khác nhau?
Các cấp độ | Hoạt động | Những lợi ích |
---|---|---|
Cấp độ 1 Ban đầu |
| Không ai. Một dự án là Total Chaos |
Cấp 2 được quản lý |
|
|
Cấp độ 3 được xác định |
|
|
Cấp độ 4 được quản lý định lượng |
|
|
Tối ưu hóa cấp độ 5 |
|
|
Sơ đồ sau, cung cấp một biểu diễn bằng hình ảnh về những gì xảy ra ở các cấp CMM khác nhau
Mất bao lâu để triển khai CMM?
CMM là quy trình mong muốn nhất để duy trì chất lượng của sản phẩm đối với bất kỳ công ty phát triển phần mềm nào, nhưng việc thực hiện nó mất nhiều thời gian hơn những gì dự kiến.
- Việc triển khai CMM không diễn ra trong một sớm một chiều
- Nó không chỉ đơn thuần là một "thủ tục giấy tờ."
- Thời gian thực hiện điển hình là
- 3-6 tháng -> để chuẩn bị
- 6-12 tháng -> để thực hiện
- 3 tháng -> để chuẩn bị đánh giá
- 12 tháng -> cho mỗi cấp độ mới
Cấu trúc bên trong của CMM
Mỗi cấp độ trong CMM được xác định thành khu vực quy trình chính hoặc KPA , ngoại trừ cấp độ 1. Mỗi KPA xác định một nhóm các hoạt động liên quan, khi được thực hiện chung sẽ đạt được một bộ mục tiêu được coi là quan trọng để cải thiện năng lực phần mềm
Đối với các cấp CMM khác nhau, có một số KPA, ví dụ như đối với CMM model-2, KPA là
- REQM- Quản lý yêu cầu
- PP- Lập kế hoạch dự án
- PMC- Giám sát và Kiểm soát Dự án
- SAM- Quản lý thỏa thuận nhà cung cấp
- PPQA-Quy trình và Đảm bảo Chất lượng
- Quản lý cấu hình CM
Tương tự như vậy, đối với các mô hình CMM khác, bạn có KPA cụ thể. Để biết liệu việc triển khai KPA có hiệu quả, lâu dài và có thể lặp lại hay không, nó được lập bản đồ dựa trên cơ sở sau
- Cam kết thực hiện
- Khả năng biểu diễn
- Các hoạt động thực hiện
- Đo lường và phân tích
- Xác minh việc triển khai
Hạn chế của Mô hình CMM
- CMM xác định những gì một quy trình nên giải quyết thay vì nó nên được triển khai như thế nào
- Nó không giải thích mọi khả năng cải tiến quy trình phần mềm
- Nó tập trung vào các vấn đề phần mềm nhưng không xem xét việc lập kế hoạch kinh doanh chiến lược, áp dụng công nghệ, thiết lập dòng sản phẩm và quản lý nguồn nhân lực
- Nó không cho biết một tổ chức nên tham gia vào loại hình kinh doanh nào
- CMM sẽ không hữu ích trong dự án đang gặp khủng hoảng ngay bây giờ
Tại sao sử dụng CMM?
Ngày nay CMM hoạt động như một "con dấu phê duyệt" trong ngành công nghiệp phần mềm. Nó giúp cải thiện chất lượng phần mềm theo nhiều cách khác nhau.
- Nó hướng tới quy trình tiêu chuẩn có thể lặp lại và do đó giảm thời gian học về cách hoàn thành công việc
- Thực hành CMM có nghĩa là thực hành giao thức chuẩn để phát triển, có nghĩa là nó không chỉ giúp nhóm tiết kiệm thời gian mà còn đưa ra một cái nhìn rõ ràng về những gì cần làm và những gì mong đợi
- Các hoạt động chất lượng phù hợp với dự án hơn là được coi như một sự kiện riêng biệt
- Nó hoạt động như một người đi lại giữa dự án và nhóm
- Các nỗ lực của CMM luôn hướng tới việc cải tiến quy trình
Tóm lược
CMM lần đầu tiên được giới thiệu vào cuối những năm 80 trong Lực lượng Không quân Hoa Kỳ để đánh giá công việc của các nhà thầu phụ. Sau đó, với phiên bản cải tiến, nó đã được thực hiện để theo dõi chất lượng của hệ thống phát triển phần mềm.
Toàn bộ cấp độ CMM được chia thành năm cấp độ.
- Mức 1 (Ban đầu): Nơi mà các yêu cầu đối với hệ thống thường không chắc chắn, bị hiểu nhầm và không được kiểm soát. Quá trình này thường hỗn loạn và đặc biệt.
- Cấp độ 2 (Được quản lý): Ước tính chi phí, lịch trình và chức năng của dự án. Các tiêu chuẩn phần mềm được xác định
- Cấp độ 3 (Đã xác định): Đảm bảo rằng sản phẩm đáp ứng các yêu cầu và mục đích sử dụng
- Cấp độ 4 (Được quản lý theo định lượng): Quản lý các quy trình và quy trình phụ của dự án một cách thống kê
- Cấp độ 5 (Trưởng thành): Xác định và triển khai các công cụ mới và cải tiến quy trình để đáp ứng nhu cầu và mục tiêu kinh doanh