Mô hình trưởng thành năng lực (CMM) & đó là Cấp độ trong Kỹ thuật phần mềm

Mục lục:

Anonim

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ì?

  1. Ban đầu
  2. Lặp lại / được quản lý
  3. Xác định
  4. Được quản lý định lượng
  5. 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
  • Ở cấp độ 1, quá trình này thường hỗn loạn và đặc biệt
  • Năng lực được đặc trưng dựa trên cơ sở của các cá nhân chứ không phải của tổ chức
  • Tiến độ không được đo lường
  • Các sản phẩm được phát triển thường đúng tiến độ và vượt quá ngân sách
  • Nhiều biến thể trong mục tiêu lịch trình, chi phí, chức năng và chất lượng
Không ai. Một dự án là Total Chaos
Cấp 2 được quản lý
  • Quản lý yêu cầu
  • Ước tính các thông số của dự án như chi phí, lịch trình và chức năng
  • Đo lường tiến độ thực tế
  • Xây dựng kế hoạch và xử lý
  • Các tiêu chuẩn dự án phần mềm được xác định
  • Xác định và kiểm soát sản phẩm, báo cáo sự cố thay đổi, v.v.
  • Các quy trình có thể khác nhau giữa các dự án
  • Các quy trình trở nên dễ hiểu hơn
  • Người quản lý và các thành viên trong nhóm dành ít thời gian hơn để giải thích cách mọi thứ được thực hiện và nhiều thời gian hơn để thực hiện nó
  • Các dự án được ước tính tốt hơn, lập kế hoạch tốt hơn và linh hoạt hơn
  • Chất lượng được tích hợp vào các dự án
  • Chi phí ban đầu có thể cao nhưng tăng ca sẽ giảm xuống
  • Hỏi thêm giấy tờ và tài liệu
Cấp độ 3 được xác định
  • Làm rõ các yêu cầu của khách hàng
  • Giải quyết các yêu cầu thiết kế, xây dựng quy trình thực hiện
  • Đảm bảo rằng sản phẩm đáp ứng các yêu cầu và mục đích sử dụng
  • Phân tích các quyết định một cách có hệ thống
  • Chỉnh sửa và kiểm soát các vấn đề tiềm ẩn
  • Cải tiến quy trình trở thành tiêu chuẩn
  • Giải pháp tiến triển từ "được mã hóa" thành "được thiết kế"
  • Cổng chất lượng xuất hiện trong suốt nỗ lực của dự án với toàn bộ nhóm tham gia vào quá trình
  • Rủi ro được giảm thiểu và không làm đội bất ngờ
Cấp độ 4 được quản lý đị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ê
  • Hiểu hiệu suất quy trình, quản lý định lượng dự án của tổ chức
  • Tối ưu hóa Hiệu suất Quy trình trong toàn tổ chức
  • Thúc đẩy Quản lý Dự án Định lượng trong một tổ chức.
Tối ưu hóa cấp độ 5
  • Phát hiện và loại bỏ sớm nguyên nhân gây ra khuyết tật
  • 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
  • Thúc đẩy Đổi mới và Triển khai Tổ chức
  • Tạo động lực để Phân tích và Giải quyết Nhân quả

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

  1. Cam kết thực hiện
  2. Khả năng biểu diễn
  3. Các hoạt động thực hiện
  4. Đo lường và phân tích
  5. 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