Close

Sự khác nhau giữa các chuẩn CMMI, ISO và Agile


04/07/2016
CMMI, ISO và Agile là ba cái tên rất quen thuộc đối với các doanh nghiệp phần mềm. Bạn đã biết sự khác biệt giữa chúng là gì chưa? Chúng ta cùng khám phá điều này qua các tiêu chí so sánh sau đây:

1) Về mặt khái niệm

CMMI  (Capacbility Maturity Model Intergration – Mô hình năng lực trưởng thành tích hợp) được phát triển tại Viện Kỹ Nghệ Phần Mềm của Mỹ (Viện SEI – nay đổi thành Viện CMMI) tại trường Đại học Carnegie Mellon ở Pittsburgh, PA, là mô hình nâng cấp của mô hình CMM trước đây quyết định mức độ trưởng thành chuyên sâu của các hệ thống phần mềm.

ISO là một tập hợp các tiêu chuẩn quản lý chất lượng được phát triển và duy trì bởi Tổ Chức Tiêu Chuẩn Quốc Tế (ISO). Ví dụ như ISO 9001 liên quan đến các tiêu chuẩn về chuỗi cung ứng, trong khi đó ISO 27001 liên quan đến các tiêu chuẩn bảo mật thông tin. Các thông số kỹ thuật của ISO thay đổi theo thời gian.

Agile là một phương pháp được sử dụng để thay thế các phương pháp quản lý dự án truyền thống, thường áp dụng cho việc phát triển phần mềm. Agile giúp cho các nhóm dự án có thể đối phó được với các sự cố không thể đoán trước được thông qua việc gia tăng và tương tác các thước đo công việc, thường được biết với cái tên “Sprint”. Phương pháp Agile là một sự thay thế cần thiết cho các phương pháp phát triển truyền thống như mô hình thác nước (Waterfall) hay phát triển liên tục.

2) Sự khác biệt thực tiễn

Sự khác biệt cơ bản giữa CMMI và ISO là về khái niệm. CMMI là một mô hình quy trình, trong khi ISO lại là một tiêu chuẩn đánh giá.

CMMI là một tập hợp “các phương pháp thực thi tốt nhất – best practices” bắt nguồn từ những doanh nghiệp dẫn đầu trong ngành công nghiệp và liên quan đến các sản phẩm kỹ thuật và phát triển phần mềm. Các doanh nghiệp có thể đạt được CMMI từ mức độ 1 đến mức độ 5 tùy thuộc vào mức độ tuân thủ của các lĩnh vực hoạt động với các vùng quy trình theo yêu cầu của CMMI.

ISO là một công cụ đánh giá cấp chứng chỉ cho các doanh nghiệp có quy trình phù hợp với các tiêu chuẩn đặt ra.

 Phương pháp Agile giúp doanh nghiệp thích ứng với mọi hoàn cảnh hơn là dự đoán các biến cố. Với phương pháp phát triển truyền thống có xu hướng giúp nhóm dự án lên một kế hoạch tổng quát trong thời gian dài, các phương pháp này vẫn tốt cho đến khi có các biến cố xảy ra. Vì vậy, bản chất của chúng là kháng cự lại các biến cố. Trong khi đó, phương pháp Agile lại luôn hoan nghênh “biến cố”. Các quy trình tuân theo phương pháp Agile để có thể thích nghi và phát triển dựa trên sự thay đổi, thậm chí là khi thay đổi chính bản chất của các quy trình ấy.

3) Khác biệt trong phạm vi

CMMI chỉ được áp dụng và mở rộng cho các doanh nghiệp phát triển hệ thống phần mềm chuyên sâu. ISO linh hoạt hơn và có thể áp dụng cho tất cả các ngành sản xuất. CMMI tập trung chuyên biệt vào kỹ thuật và các quy trình quản lý dự án trong khi trọng tâm của ISO thường chung chung cho tất cả các ngành.

CMMI ủy quyền thực hiện các phương pháp thực thi chung và cụ thể, đồng thời doanh nghiệp có quyền được chọn lựa mô hình CMMI phù hợp với nhu cầu của họ từ 22 vùng quy trình chuẩn của CMMI. Trong khi đó, các yêu cầu của chuẩn ISO là giống nhau đối với tất cả các công ty, ngành nghề và mô hình kinh doanh.

Phương pháp phát triển Agile giúp cho doanh nghiệp có cơ hội đánh giá định hướng của dự án thông qua các vòng đời phát triển. Điều này đạt được thông qua việc theo dõi tiến độ công việc thường xuyên, thường được biết đến với cái tên “Sprint” theo Scrum hoặc “Iterations” theo các phương thức còn lại của Agile, và vào những giai đoạn cuối của sự theo dõi này, nhóm dự án phải cho thấy được kết quả là sự gia tăng các sản phẩm có tiềm năng thay đổi. Dựa vào đặc tính là tập trung vào các vòng tròn công việc cũng như chức năng của các sản phẩm mà doanh nghiệp sản xuất được, phương pháp Agile được mô tả là như là sự gia tăng lặp đi lặp lại.

4) Hướng tiếp cận

CMMI yêu cầu việc đồng bộ hóa các quy trình với nhu cầu của doanh nghiệp để chúng trở thành một phần của văn hóa doanh nghiệp và không bao giờ bị phá vỡ dưới áp lực của deadlines. ISO thường xác định sự phù hợp, tuy nhiên cũng có một số bất cập như ISO trong một vài trường hợp không giúp doanh nghiệp xác định được nó có thực sự phù hợp với chiến lược kinh doanh của doanh nghiệp hay không.

CMMI hướng đến quản trị rủi ro như là một mô hình được tổ chức và hệ thống nhằm xác định các nhân tố rủi ro, định lượng và giám sát chúng trong suốt vòng đời của dự án. ISO mãi đến gần đây mới tập trung vào quản lý rủi ro. ISO 31000 là một ví dụ điển hình khi cung cấp các hướng dẫn cơ bản để thiết kế, thực hiện và duy trì việc quản lý rủi ro quy trình trong tổ chức.

Mặc dù CMMI tập trung liên kết các quy trình tới mục tiêu của doanh nghiệp, tuy nhiên sự hài lòng của khách hàng lại không được xếp là một tiêu chí đánh giá, trong khi đó đối với ISO thì sự hài lòng của khách hàng là một phần quan trọng trong các yêu cầu.

Phương pháp Agile được định hướng thiên về con người hơn là quy trình. Mục đích của các phương pháp kỹ thuật khác là xác định một quy trình có thể hoạt động tốt đối với bất cứ ai sử dụng nó. Agile cũng giúp nhận định rằng quy trình không tạo nên kỹ năng phát triển của nhóm dự án mà nó chỉ hỗ trợ để họ phát triển hơn mà thôi.

5) Hướng triển khai

Cả CMMI và ISO đều không yêu cầu doanh nghiệp phải thiết lập quy trình mới. CMMI sẽ so sánh các quy trình sẵn có của doanh nghiệp với các phương pháp thực thi tốt nhất trong ngành, trong khi ISO thường sẽ yêu cầu điều chỉnh các quy trình đó phù hợp hơn với các yêu cầu cụ thể của ISO. Trong thực tế, có một số doanh nghiệp có xu hướng tập trung việc viết quy trình càng rộng càng tốt khi triển khai cả CMMI và ISO. Trong khi đó, hầu hết các doanh nghiệp lựa chọn cách thành lập một nhóm viết và triển khai quy trình nội bộ sau đó thuê các chuyên gia đánh giá bên ngoài xem xét và đánh quá quy trình triển khai của họ.

Phương pháp phát triển Agile giúp doanh nghiệp sản xuất sản phẩm chính xác hơn. Thay vì phải hứa hẹn với thị trường tung ra sản phẩm phần mềm mới toanh, phương pháp Agile giúp doanh nghiệp có thể liên tục phát triển làm mới sản phẩm của mình để tối ưu hóa giá trị kinh doanh, đồng thời gia tăng giá trị cạnh tranh của họ trên thị trường một cách đáng kể. Phát triển thông qua phương pháp Agile sẽ đảm bảo sản phẩm của doanh nghiệp luôn thích ứng nhất định với yêu cầu của thị trường và nhóm dự án sẽ cho ra được sản phẩm mà không phải tốn thật nhiều công sức.

Sự so sánh giữa CMMI và ISO cho thấy rằng trong khi CMMI chuyên biệt, phức tạp và liên quan đến các mục tiêu kinh doanh của doanh nghiệp hơn thì ISO lại linh hoạt hơn, phạm vi áp dụng rộng hơn và không liên quan trực tiếp đến các mục tiêu kinh doanh. Tuy vậy, việc đạt được cả hai chứng chỉ ISO và CMMI sẽ giúp doanh nghiệp không những xây dựng một hệ thống quản trị chất lượng mà còn giúp họ tập trung cải tiến liên tục.

Kết luận

Nếu chúng ta sử dụng CMMI cho phát triển như là một ví dụ quen thuộc, chúng tôi đề nghị nhiều phương pháp để phát triển có thể được thực hiện trong khuôn khổ rộng lớn đại diện bởi nội dung của CMMI. Phương pháp, sau đó, có thể có lẽ tốt nhất được coi là cách thực sự để làm công việc của “làm thế nào” mà “cái gì” của các mô hình có thể không giải quyết thỏa đáng. Ví dụ tốt nhất chúng tôi có một phương pháp hiệu quả liên quan đến CMMI là TSP (Team Software Process). Tương tự như vậy, các phương pháp Agile cũng phù hợp trong một cấu trúc mô hình như CMMI-DEV và đã có mô hình tích hợpvới CMMI http://qnet.edu.vn/courses/4 . Giống như TSP, phương pháp Agile tìm cách cung cấp phương pháp tiếp cận chi tiết cho nhiệm vụ phát triển.

 (nguồn tham khảo từ  vizteams.com)

Leave your comment