Software Sustainability Maturity Model
By Ross Gardler, Published: 07 September 2010, Reviewed: 12 March 2012
Theo: http://www.oss-watch.ac.uk/resources/ssmm
Bài được đưa lên Internet ngày: 12/03/2012
Lời người dịch: Để đánh giá độ chín của phần mềm, cả nguồn đóng và nguồn mở, có nhiều phương pháp để thực hiện, như CMMI, SSMM, RRR, SPICE và mỗi cách thức đó có những ưu và nhược điểm của riêng chúng. Bài viết này đề cập tới những phương pháp đó và cách kết hợp của chúng để đánh giá về Độ chính đối với Tính bền vững của phần mềm cho việc Sử dụng lại các phần mềm đó. “Chúng tôi tranh luận rằng bằng việc đánh giá một dự án với lưu ý về 3 yếu tố của tính bền vững - tính mở, khả năng sử dụng lại và khả năng - có khả năng nhấn mạnh các cơ hội cho sự cải tiến trong đổi mới mở, thiết kế sản phẩm và độ chín của qui trình. Điều này tới lượt nó sẽ cho phép các nhà quản lý tìm cách sử dụng lại hoặc phát triển tiếp các kết quả đầu ra của phần mềm, để phân bổ các tài nguyên theo một cách thức phù hợp nhất cho các nhu cầu dự án của họ”. Bài viết có thể là tham khảo rất tốt cho các công ty phần mềm và các nhà quản lý CNTT ở Việt Nam. Một khía cạnh khác là: để đánh giá năng lực các công ty phần mềm không chỉ có duy nhất CMMI.
Khi chọn sử dụng lại phần mềm cho mua sắm hoặc phát triển - bất kể mô hình giấy phép và sự phát triển mà bạn sẽ sử dụng - bạn cần cân nhắc tương lai. Trong khi một sản phẩm phần mềm có thể thỏa mã các nhu cầu ngày nay, liệu nó có còn thỏa mã các nhu cầu của ngày mai hay không? Liệu nhà cung cấp có vẫn còn ở xung quanh trong 5 năm nữa hay không? Nhà cung cấp liệu sẽ vẫn quan tâm cho tất cả các khách hàng của mình trong 5 năm nữa hay không? Nhà cung cấp sẽ có trách nhiệm trả lời cho các báo cáo lỗi và các yêu cầu tính năng nữa hay không? Nói cách khác, phần mềm có bền vững hay không?
Khi đánh giá phần mềm nguồn đóng, nhiều trong số này là công việc phỏng đoán. Phần mềm nguồn mở (PMNM), mặt khác, trình bày một số ưu điểm so với nguồn đóng, như những lựa chọn cho sự duy trì và phát triển liên tục của các cấu hình phần mềm cục bộ. Điều này có thể giảm thiểu các rủi ro do sự thất bại của nhà cung cấp thể hiện. Nhưng nó cũng là sự đánh giá sản phẩm phức tạp, vì những người mới tới với các phương pháp luận phát triển nguồn mở có thể thấy khó khăn để đánh giá phần mềm về tính bền vững của nó.
Tài liệu này phác thảo một đề xuất cho một Mô hình Độ chín Bền vững của Phần mềm – SSMM (Software Sustainability Maturity Model), nó có thể được sử dụng để chính thức đánh giá cả phần mềm nguồn mở và nguồn đóng với sự tôn trọng về tính bền vững của nó. Mô hình đưa ra một phương tiện đánh giá các rủi ro có liên quan tới việc áp dụng một giải pháp được đưa ra. Nó là hữu dụng cho những ai mua sắm các giải pháp phần mềm để triển khai và/hoặc tùy biến, cũng như để sử dụng lại trong các sản phẩm phần mềm mới. Cũng hữu dụng cho các nhà lãnh đạo dự án và các lập trình viên, khi nó cho phép họ xác định các lĩnh vực quan tâm, với sự tôn trọng về tính bền vững, trong các dự án của họ.
Các dạng sử dụng lại
Khái niệm Sử dụng lại phần mềm là quan trọng trong việc đánh gia tính bền vững của phần mềm. Vì thế trước khi chúng ta xem xét các kỹ thuật cho việc đo đếm tính bền vững của phần mềm, hãy xác định một số khái niệm quan trọng khi chúng được sử dụng trong ngữ cảnh này.
Sử dụng lại phần mềm là ứng dụng lại tri thức được gói trong mã phần mềm để giảm nỗ lực phát triển và duy trì một hệ thống phần mềm. Thậm chí khi một ứng dụng phần mềm hoàn chỉnh không thể được sử dụng lại được thì các thành phần riêng rẽ, các định dạng dữ liệu, các thiết kế mức độ cao, các thuật toán hoặc các khoản khác vẫn còn có thể sử dụng lại được.
Khi sử dụng lại các thành phần riêng rẽ của các hệ thống phần mềm, thường có 2 tiếp cận. Tiếp cận đầu là sử dụng lại một thành phần như nó đang có, mà không cần hiểu các công việc bên trong nó. Đó là, một người đơn giản thực hiện các lời gọi tới thành phần đó và nhận lại các kết quả. Khi sử dụng lại một thành phần theo cách này, một người phải chắc chắn thành phần đó chính xác được yêu cầu, khi mà không có khả năng sửa đổi hành vi của thành phần đó.
Tiếp cận thứ 2 khi sử dụng lại các thành phần phần mềm là thực hiện một số sửa đổi tới thành phần đó trước khi đưa nó vào trong hệ thống. Điều này có thể được thực hiện khi thành phần đó không thực hiện chính xác như được yêu cầu trong môi trường mới. Tuy nhiên, để cho phép dạng sử dụng lại này, thành phân đó phải được thiết kế lại và được viết lại tài liệu, và được cấp phép theo một cách thức mà cho phép sự sửa đổi đó.
Các yếu tố ảnh hưởng tới tính bền vững của phần mềm
Tính bền vững của phần mềm bị ảnh hưởng vì cả các vấn đề kỹ thuật và phi kỹ thuật. Các vấn đề kỹ thuật có xu hướng tập trung vào cách sử dụng lạ được mà phần mềm đó là - như, tiềm năng của nó cho sự thích nghi - trong khi các vấn đề phi kỹ thuật bao gồm cách mà một dự án được điều hành và được cấp vốn. Thường không có khả năng tách bạch rõ ràng các vấn đề kỹ thuật khỏi các vấn đề phi kỹ thuật.
Để bền vững được qua thời gian, phần mềm cần phải vừa là hữu dụng và vừa có khả năng thích nghi được. Nó cũng cần phải tiến hóa khi các nhu cầu của người sử dụng tiến hóa. Tiềm năng sử dụng lại vì thế là yếu tố chủ chốt trong tính bền vững của phần mềm. Sử dụng lại có thể tiết kiệm được thời gian và tiền bạc, và làm gia tăng độ tin cậy của các sản phẩm kết quả. Tuy nhiên, một ý định để sử dụng lại phần mềm mà là không dễ dàng sử dụng lại được có thể có hiệu ứng ngược. Mục tiêu của Mô hình Độ chính về Tính bền vững của Phần mềm (SSMM) là để cung cấp một biện pháp đánh giá các yếu tố rủi ro trong việc sử dụng lại phần mềm.
Tính bền vững của phần mềm cũng bị ảnh hưởng bởi số lượng các môi trường trong đó phần mềm có khả năng được sử dụng và sử dụng lại. Ví dụ, nếu một công cụ có khả năng áp dụng được cho chỉ một số nhỏ những người sử dụng mà thực hiện những đóng góp tối thiểu cho dự án, thì ít có khả năng là các tài nguyên đầy đủ đó sẽ có sẵn sàng cho sự hỗ trợ và phát triển liên tục của sản phẩm.
Là không thông thường thực tiễn tốt đối với ý định để tạo ra một giải pháp phần mềm mà tìm cách làm thỏa mãn cho quá nhiều nhóm người sử dụng khác hẳn nhau. Điều này là vì khó để giải quyết các nhu cầu của tất cả những người sử dụng tiềm năng mà không phải thực hiện những thỏa hiệp đáng kể. Vì thế trở nên ngày càng phổ biến đối với các nhà cung cấp để chia sẻ các thành phần cốt lõi của một hệ thống phần mềm và sau đó tập trung vào nhóm người sử dụng đặc thù cần ở các mức trừu tượng hóa cao hơn, như các giao diện người sử dụng. Ví dụ, cân nhắc rằng nhiều máy tìm kiếm trên Internet, các mạng xã hội và các dịch vụ micro - blogging tất cả cộng tác trong cùng y hệt các khung công việc quản lý dữ liệu cốt lõi. Trong các trường hợp đó, các tổ chức mà thường xuyên cạnh tranh trong thị trường đó có khả năng cộng tác trong cộng nghệ chồng lấn, trong khi vẫn phát triển những ưu thế cạnh tranh trong thị trường đặc thù của họ. Thường được gọi là đổi mới mở, tiếp cận này được thảo luận chi tiết hơn trong trình diễn video ở trên.
Có nhiều ví dụ mã phần mềm đang được sử dụng, đặc biệt nếu chúng ta nhìn vào phần mềm nguồn mở để truyền cảm hứng. Các thành phần phần mềm có khả năng sử dụng lại trải từ các thư viện nhỏ, như những thư viện trong dự án Apache Commons, thông qua các khung công việc cho việc xây dựng các ứng dụng hoàn chỉnh, như Eclipse Rich Client Platform. Cũng có những ứng dụng hoàn chỉnh mà có thể được mở rộng thông qua các hệ thống cài cắm (plug-in), như Moodle, Drupal hoặc trình duyệt web Mozilla Firefox.
Các kỹ thuật để đo đếm tính bền vững
Một kỹ thuật đánh giá tính bền vững đủ giàu có nên đề cập tới cả các khía cạnh kỹ thuật và phi kỹ thuật của các thành phần và hệ thống phần mềm có ý định cho sự triển khai hoặc sử dụng lại.
Nhiều tiếp cận cho việc đo đếm tính bền vững của phần mềm và các qui trình quản lý của nó. Tuy nhiên, các đo đếm định tính là có vấn đề, khi chúng cho phép ý kiến cá nhân gây ảnh hưởng tới các kết quả. Ví dụ, một người bản hàng tốt hoặc lãnh đạo dự án có thể gây ảnh hưởng đáng kể tới đánh giá định tính của một sản phẩm.
Ngoài các biện pháp định tính ra, có nhiều tiếp caanhj định lượng cho việc đo đếm khả năng sử dụng lại. Chúng sẽ xem xét bản thân mã và/hoặc các dữ liệu công khai có sẵn về mô hình phát triển của dự án. Nhưng những thứ đó đòi hỏi sự truy cập tới mã nguồn và các dữ liệu quản lý (như dữ liệu theo dõi các lổi), vì thế làm cho có khả năng để đánh giá cả phần mềm nguồn mở và nguồn đóng bằng việc sử dụng cùng y hệt phương pháp đó. Một dự án được phát triển mở cho phép tất cả các khía cạnh của sự quản lý, điều hành và mã nguồn sẽ được xem xét, trong khi một dự án đóng thường sẽ dựa vào những đảm bảo từ những người chủ sở hữu dự án, hơn là vào đánh giá toàn diện.
Trong phần này chúng tôi xem xét một số kỹ thuật đánh giá hiện hành và giới thiệu một 'sự xếp hạng tính mở' mới, nó được thiết kế để cho phép đánh giá các cơ hội cho sự cộng tác với các bên thứ 3 trong thiết kế, triển khai và duy trì các kết quả đầu ra của dự án. Một sự khác biệt chủ chốt giữa việc xếp hạng tính mở và các kỹ thuật đang tồn tại là việc xếp hạng tính mở xem xét các rào cản tiềm tàng cho các dạng cộng tác cần thiết để đạt được những phần thưởng của đổi mới mở trong phần mềm.
Các kỹ thuật không chính thức
Các kỹ thuật không chính thức là nhanh và dễ dàng để áp dụng, nhưng chúng không nhất quán và mở cho sự diễn giải. Chúng tập trung vào thông tin mà dễ dàng truy cập được cho những người đánh giá. Trong một dự án phần mềm nguồn mở, thông tin nhiều hơn nhiều là sẵn sàng so với trogn một dự án nguồn đóng. Điều này cho phép một sự đánh giá hoàn chỉnh hơn đối với dự án. Ví dụ, bổ sung thêm vào các tính năng trực quan đang tồn tại và sử dụng của một dự án nguồn đóng, thì hiện trạng, nhịp độ và đường hướng của sự phát triển liên tục là nhìn thấy rõ ràng trong một dự án nguồn mở.
Vì tính mềm dẻo cà bản chất tự nhiên không có cấu trúc của nó, các kỹ thuật không chính thức có thẻ được tạo ra và được áp dụng cho cả các khía cạnh kỹ thuật và phi kỹ thuật của phát triển và sử dụng lại phần mềm. Một đánh giá không chính thức có thể bao gồm một đánh giá sơ bộ các tính năng theo yêu cầu, một sự rà soát lại lướt nhanh những người sử dụng đang tồn tại và một sự xem xét về quản lý của dự án. Tuy nhiên, chúng không thể được áp dụng một cách đáng tin cậy cho các dự án khác nhau một cách chính xác vì chúng là không chính thưc, đó là chúng thiếu các qui trình đánh giá được xác định và lặp đi lặp lại được. Tính hữu dụng của chúng vì thế bị hạn chế cho việc làm hẹp đi một số lượng lớn các ứng viên đối với một tập hợp có khả năng quản lý được hơn các ứng viên mà có thể sau đó được đánh giá một cách chính thức.
Các kỹ thuật chính thức
Có nhiều kỹ thuật chính thức cho việc đo đém tính hiệu quả của các đội và các qui trình phát triển phần mềm. Một số có uy tín tốt, như Mô hình Độ chín theo Khả năng – CMM (Capability Maturity Model). Những mô hình khác, như Xếp hạng Tính sẵn sàng Sử dụng lại – RRR (Reuse Readiness Rating), là ít có uy tín hơn nhưng tuy vậy vẫn được sử dụng trong các tổ chức đáng kể. Thậm chí còn ít có uy tín hơn nữa nhưng vẫn đưa ra được công việc nền tảng hữu dụng cho một Mô hình Độ chí về Tính bền vững của Phần mềm – SSMM (Software Sustainability Maturity Model). Các phần bên dưới phác họa ngắn gọn một số kỹ thuật đánh giá chính thức được sử dụng trong công việc này.
Mô hình Độ chín theo Khả năng (CMM)
CMM đã được giới thiệu vào đầu những năm 1980. Nó đưa ra một tập hợp các mô hình đánh giá được sử dụng lại để xác định khả năng của một tổ chức phân phối một mẩu phần mềm, đúng thời gian và với một mức chất lượng chấp nhận được. Những ví dụ chung nhất là Tích hợp cho Phát triển Mô hình Độ chính theo Khả năng - CMMI-DEV (Capability Maturity Model Integration for Development) và Xác định Khả năng và sự Cải tiến Qui trình Phần mềm - SPICE (Software Process Improvement and Capability dEtermintation, còn được gọi là ISO 15504). Để áp dụng các mô hình đó, một người đòi hỏi sự truy cập tới đội phát triển. Thoạt nhìn, điều này làm cho chúng lý tưởng cho việc áp dụng cả đối với các dự án nguồn mở và nguồn đóng.
Tuy nhiên, CMM không thể áp dụng được trực tiếp cho các cộng đồng dự án nguồn mở, vì nó giả thiết một cấu trúc tổ chức có ràng buộc. Tuy vậy, vì một dự án nguồn mở được quản lý tốt sẽ có các qui trình và cấu trúc được xác định tại chỗ, không có lý do vì sao các khái niệm được thấy trong các mô hình đó không thể áp dụng được để áp dụng chúng cho các dự án nguồn mở.
Xếp hạng Tính sẵn sàng Sử dụng lại – RRR
Các Nhóm Làm việc về Sử dụng lại Phần mềm (WG) của các hệ thống dữ liệu khoa học Trái đất của NASA (ESDS) đang phát triển RRR (Reuse Readiness Rating) như một mô hình để đo đếm và đánh giá khả năng sử dụng lại của các thành phần và hệ thống phần mềm. RRR được thiết kế để đánh giá bất kỳ thành phần phần mềm nào, bất kể phương pháp luận phát triển của thành phần đó.
Khi sử dụng lại các thành phần phần mềm không có sửa đổi, sự đánh giá sử dụng các mức đó là đủ trong hầu hết các trường hợp. Tuy nhiên, nếu chúng ta định tiến hành các tùy biến cho phần mềm mà chúng ta đang sử dụng lại thì chúng ta cũng cần một đánh giá phương pháp luận phát triển và quản lý dự án. Các mức Sẵn sàng Sử dụng lại không đưa ra một cơ chế cho sự đánh giá như vậy, mà đưa ra một khung công việc cho đánh giá kỹ thuật của các thành phần theo yêu cầu.
Các mô hình đánh gia nguồn mở
Có một số mô hình đánh giá PMNM, bao gồm Mô hình Độ chính Nguồn Mở - OSMM của Capgemini và cái khác có cùng tên của Navica, Xếp hạng Độ sẵn sàng của Doanh nghiệp và Định chất lượng và Lựa chọn PMNM - QSOS (Qualification and Se-lection of Open Source software). Mỗi trong số các mô hình đó có ý định cung cấp một biện pháp đánh giá các khía cạnh phi kỹ thuật của một dự án PMNM, nhưng gì một số người có thể gọi là 'tính mở' của mô hình phát triển của chúng. Đó là, chúng được sử dụng để giúp chỉ dẫn đánh giá dự án như một sự tổng hợp của cả 2 các đầu ra của nó và đội phát triển của nó (hoặc cộng đồng trong trường hợp của nguồn mở).
Các tiếp cận đó là hữu dụng trong đó chúng nhấn mạnh tới tầm quan trọng của việc xem xét sức khỏe cộng đồng khi lựa chọn các sản phẩm nguồn mở. Tuy nhiên, chúng không thể dễ dàng được áp dụng cho các dự án nguồn đóng nơi mà tính trực quan theo yêu cầu trong đội phát triển dự án thường không được thể hiện. Ví dụ, không có khả năng để đánh giá tính hiệu quả của việc theo dõi các vấn đề và lên kế hoạch phát hành mà không có sự truy cập trình theo dõi các vấn đề của các dự án. Ddieuf này không phải là sự thất bại của các mô hình đánh giá, mà là kết quả của sự thiếu hụt thông tin minh bạch về sự phát triển của hầu hết các sản phẩm nguồn đóng.
Xếp hạng Tính mở
OSS Watch, trong quan hệ đối tác với Pia Waugh, đã phát triển một 'xếp hạng tính mở'. Đây là một loạt các câu hỏi được thiết kế để chỉ dẫn đánh giá của một cấu trúc dự án với sự tôn trọng quản lý sở hữu trí tuệ, áp dụng các tiêu chuẩn, quản lý tri thức, quản lý dự án, và các cơ hội thị trường. Không giống như các mô hình trước đó được thiết kế để đánh giá các dự án nguồn mở, mô hình này có thể được áp dụng cho cả các sản phẩm phần mềm nguồn mở và nguồn đóng.
Xếp hạng Tính mở cho phép một người xác định các điểm mạnh và yếu trong một cấu trúc quản lý dự án với sự tôn trọng cho phép sự cộng tác của bên thứ 3 và sử dụng lại các kết quả đầu ra. Điều này cho phép những người quản lý dự án xác định các lĩnh vực mà có thể không có chủ ý hạn chế các cơ hội cộng tác. Tương tự, việc xếp hạng cho phép các bên thứ 3 hiểu được những rào cản nào đang tồn tại với lưu ý tới việc thực hiện các sửa đổi cục bộ tới các kết quả đầu ra của phần mềm từ các bên thứ 3. Bằng việc sử dụng công cụ này cả 2 bên có thể lên kế hoạch có hiệu quả hơn cho sự phân bổ các tài nguyên của họ phù hợp với các nhu cầu của họ.
Các kỹ thuật được tự động hóa
Một số kỹ thuật đo đếm tự động đối với các mô hình phát triển cộng đồng và chất lượng phần mềm cũng đã được khai thác. Đó là, có thể, một trong những lĩnh vực nặng nhọc nhất của đánh giá phần mềm. Các công cụ được tự động hóa có xu hướng đưa ra một tổng kết mức cao mà làm mờ đi các chi tiết ở bên dưới. Vì lý do này một số người cảm thấy rằng chúng là biện pháp không hiệu quả đối với tính bền vững. Dù thế, có thể là một sai lầm để bỏ qua tất cả các tiếp cận được tự động hóa mà không có việc cân nhắc ở những nơi mà chúng có thể bổ sung thêm giá trị.
Đánh giá cộng đồng một cách tự động
Các kỹ thuật đánh giá cộng đồng có xu hướng đo đếm hoạt động về các trình theo dõi vấn đề, các trình theo dõi lỗi. các danh sách thư và kiểm soát phiên bản. Chúng đưa ra một số chỉ số hoạt động cộng đồng và vì thế, theo những người đề xướng của chúng, một biện pháp về sức khỏa của cộng đồng. Tuy nhiên, việc đo đếm sức khỏe cộng đồng bằng sử dụng các kỹ thuật định lượng, đối với nhiều người, là không hoàn thiện.
Các đo đếm định lượng, như số lượng các thư điện tử được gửi hoặc được đệ trình, không đưa ra được tham chiếu tới giá trị của các hoạt động đó. Ví dụ, một thư điện tử duy nhất mà cản trở một lỗi chính trong thiết kế là quan trọng hơn nhiều với lưu ý cho tính bền vững của phần mềm so với nhiều thư điện tử thảo luận về màu sắc của một núm trong giao diện của người sử dụng. Các kỹ thuật định lượng không có khả năng thực hiện sự khác biệt này. Những hạn chế của đánh giá định lượng các cộng đồng nguồn mở làm cho các kỹ thuật được tự động hóa trở thành một chủ đề thú vị cho các nghiên cứu hàn lâm. Tuy nhiên, hiện tại chúng có giá trị hạn chế khi đo đếm tính bền vững. Tuy nhiên, với sử dụng cẩn thận, chúng có thể hành động như những cho chỉ số của các lĩnh vực đòi hỏi sự xem xét chi tiết hơn hoặc các xu thế chung bên trong cộng đồng.
Đánh giá chất lượng phần mềm tự động
Đánh giá tự động chất lượng phần mềm là chín muồi hơn so với đánh giá tự động các mô hình phát triển cộng đồng và vì thế đưa ra các biện pháp có giá trị hơn. Điển hình, các công cụ sẽ tìm cách đo đếm các yếu tố như độ ổn định, khả năng kiểm thử, và an ninh. Trong nhiều dự án nó được xem xét là thực tiễn tốt để tích hợp một số dạng các công cụ đó trong qui trình phát triển.
Có nhiều ví dụ về các công cụ phân tích mã tự động. Các công cụ đó khi được sử dụng đúng, có thể đưa ra thông tin có giá trị về các khía cạnh đặc thù về chất lượng mã và sự quản lý.
Mô hình Độ chín về tính Bền vững của Phần mềm – SSMM
Để xác định mô hình độ chín cho tính bền vững của phần mềm, chúng tôi đã xây dưng sự truyền cảm hứng từ từ trong các kỹ thuật đánh giá được mô tả ở trên. Trong một số trường hợp (Các mức Sẵn sàng của Khả năng sử dụng lại và Mô hình Độ chính theo Khả năng), chúng tôi đã mở rộng hơn là áp dụng mô hình đó. Chúng tôi mô tả các thuộc tính chính được thấy ở từng mức độ, nhưng không chi tiết hóa các thuộc tính và tính năng theo yêu cầu cho sự tiến bộ từ một mức này sang mức tiếp sau. Trước khi xem xét các thuộc tính chủ chốt đó, hãy xác định từng trong số 9 mức độ trong mô hình đó. Trong việc đặt tên từng mức đó chúng tôi đã lấy cảm hứng từ vòng đời của một cây lê:
hạt giống
Dự án là ít hơn so với một ý tưởng và một bức vẽ trống. Ở giai đoạn này, không ai ngoài (những) người chủ dự án và môi trường ngay lập tức của họ có thể có bất kỹ ảnh hưởng nào lên kết quả đầu ra cuối cùng.
nảy mầm
Dự án đang bắt đầu hình thành, nhưng nó vẫn còn ít hơn là một đề xuất. (Những) người chủ dự án còn chưa bắt đầu truyền đạt các mục tiêu của dự án theo bất kỳ cách thức nào có ý nghĩa.
cây con
Có một sự triển khai giai đoạn sớm giải pháp ở thời điểm này. Tuy nhiên, không có sự tham gia của (những) người chủ dự án có lẽ có khả năng cao là không sống sót được. (Những) người chủ dự án không, nói chung, tìm đầu vào từ bên ngoài khác so với thông qua sự trợ giúp được ký hợp đồng, dù họ làm cho mã nguồn sẵn sàng để sử dụng lại.
vị thành niên
Dự án đang bắt đầu đưa vào cuộc sống của riêng nó, dù vẫn còn hầu hết được (những) người chủ dự án chỉ dẫn. Một số khía cạnh thiết kế dự án bây giờ có thể được ai đó khác với (những) người chủ dự án dẫn dắt, dù (những) người chủ dự án gốc ban đầu vẫn còn là sống còn cho sự phát triển của dự án vì họ là 'những người canh giữ' cho dự án.
đâm hoa
Dự án có khả năng hoạt động một cách độc lập trong một tập các chỉ tiêu được xác định hẹp. Những tác động từ bên ngoài đang bắt đầu có một ảnh hưởng đáng kể vào tương lai của dự án và vì thế một cộng đồng những người ngang hàng đang xây dựng xung quanh dự án.
thụ phấn
Dự án và cộng đồng có liên quan của nó không còn bị (những) người chủ dự án ban đầu kiểm soát nữa. Có khả năng là dự án có thể tiếp tục nếu (những) người chủ dự án rút lui hoàn toàn. Bản thân (những) người chủ dự án nhận thức được điều này và đang đảm bảo rằng các cơ chế là sẵn sàng để cho phép cộng đồng sẽ chỉ dẫn dự án hướng tới tính bền vững đầy đủ.
kết trái
Cộng đồng là tự tổ chức và đang hoàn thành các vai trò quan trọng trong cấu trúc quản lý dự án. Người lãnh đạo dự án vẫn còn là sống còn cho sự sống còn của dự án, nhưng có những ứng viên có khả năng thực hiện được vai trò của họ, một sự quá độ về quản lý được đưa ra.
chín muồi
Dự án đã ngắt tự do khỏi (những) người chủ dự án ban đầu và có thể sống sót được một cách độc lập. Cộng đồng và dự án mà cộng đồng làm việc bây giờ có khả năng ra các quyết định vì lợi ích của tất cả những người ngang hàng, hơn là vì bất kỳ tập con nào các thành viên của cộng đồng.
phân tán
Dự án đang làm thỏa mãn các nhu cầu của một tập hợp đa dạng những người sử dụng và những người đóng góp và có thể hầu như nhất định sống sót với sự ra đi của người lãnh đạo hiện hành của dự án.
Bảng bên dưới phác thảo các tính năng chủ chốt của từng trong các mức đó và ánh xạ chúng tới Mô hình Độ chính theo Khả năng (CMM) và các Mức độ Sẵn sàng Sử dụng lại – RRL (Reuse Readiness Levels). Từng mức SSMM kết hợp các yêu cầu của cả CMM và RRL, bổ sung thêm vào các yêu cầu tiếp được phác họa trong bảng này. Lưu ý rằng các yêu cầu để đạt được một mức là tối thiểu, không phải là tối đa. Ví dụ, mã phần mềm có thể có sẵn theo một giấy phép nguồn mở trước mức 5, nhưng để đạt được mức 5 thì điều này phải là như thế.
Bảng 1. Phác thảo SSMM
Mức SSMM | Tên SSMM | Tóm tắt tính mở | Mức sẵn sàng sử dụng lại (RRL) | Mức của Mô hình Độ chín theo Khả năng (CMM) |
0 | Hạt giống | Không mã nguồn nào sẵn sàng theo một giấy phép của OSI. | 1 - Không có khả năng sử dụng lại; Phần mềm không sử dụng lại được. | 0 - Không tương thích |
1 | Nảy mầm | Hoặc không có mã nguồn sẵn sàng hoặc mã nguồn không thẩm tra được; không có qui trình quản lý IP cho phép những đóng góp của các bên thứ 3. | 2 - Khả năng sử dụng lại ban đầu; sử dụng lại phần mềm là không thực tế. | 1 - Những người có năng lực và những hào kiệt |
2 | Cây con | Mã nguồn thẩm tra được là sẵn sàng trong một hệ thống kiểm soát phiên bản công khai với quyền sở hữu IP và cấp phép theo dõi được. | 3 - Khả năng sử dụng lại cơ bản; phần mềm có thể sử dụng lại được từ những người sử dụng có kỹ năng với nỗ lực, chi phí và rủi ro đáng kể. | 2 - Quản lý dự án cơ bản |
3 | Vị thành niên | (Những) người chủ dự án có cơ chế cho việc tham gia với sự quan tâm có hiểu biết của bên thứ 3 trong dự án; dự án có một địa chỉ thư có trách nhiệm trả lời. | 4 - Sử dụng lại là có thể; phần mềm có thể được hầu hết người sử dụng với một số nỗ lực, chi phí và rủi ro sử dụng lại được. |
|
4 | Đâm hoa | Các bên thứ 3 có khả năng kiểm tra, hiểu và gây ảnh hưởng tới tương lai của dự án; dự án có một trình theo dõi vấn đề công khai, website thông tin và danh sách thư, tất cả chúng được sử dụng để quản lý dự án. | 5 – Sử dụng lại là thực tế; phần mềm có thể được hầu hết những người sử dụng với chi phí và rủi ro hợp lý sử dụng lại được. | 3 - Tiêu chuẩn hóa qui trình |
5 | Thụ phấn | Các bên thứ 3 có thiện chí và khả năng nhận trách nhiệm cho những khía cạnh chính của phát triển dự án; trình theo dõi vấn đề và danh sách thư là tích cực và có trả lời cho các yêu cầu của các bên thứ 3; mã nguồn được phát hành theo một giấy phép do OSI phê chuẩn. | 6 - Phần mềm sử dụng lại được; phần mềm có thể được hầu hết những người sử dụng sử dụng lại dù còn có thế có một vài chi phí và rủi ro. |
|
6 | Kết trái | Phần mềm được quản lý theo một cách thức để đảm bảo rằng những thay đổi của 1 người không phá vỡ sự sử dụng lại của người khác; mã có các kiểm thử đủ theo đơn vị và các qui trình quản lý để đảm bảo rằng các phát hành có chất lượng nhất quán chấp nhận được. | 7 - Phần mềm sử dụng lại được cao độ; phần mềm có thể được hầu hết những người sử dụng với chi phí và rủi ro tối thiểu sử dụng lại được. | 4 - Quản lý định lượng |
7 | Chín muồi | Các vai trò trong dự án được xác định rõ ràng và các nhiệm vụ quản lý chính được nhiều hơn một thành viên cộng đồng điều hành; các qui trình giải quyết xung đột và ra quyết định được xác định theo một tài liệu điều hành và được tuân thủ. | 8 – Khả năng sử dụng lại được thể hiện; phần mềm đã và đang được nhiều người sử dụng sử dụng lại. |
|
8 | Phân tán | Dự án có khả năng duy trì xung lượng của riêng nó một cách độc lập với bất kỳ một người tham gia nào trong cộng đồng; một mô hình điều hành được gắn vào và được sửa đổi đáp ứng được những thách thức đang nổi lên; không người tham gia duy nhất nào của dự án có sự kiểm soát đối với dự án và vì thế những người mới tới có khả năng giành được ảnh hưởng. | 9 – Khả năng sử dụng lại được chứng minh; phần mềm đang được nhiều tầng lớp người sử dụng bao trùm một dải rộng lớn các hệ thống sử dụng lại. | 5 - Cải tiến qui trình liên tục |
Kết luận
Đề xuất này cho SSMM thể hiện cách một việc xếp hạng tính mở mới có thể được kết hợp với các mô hình đang tồn tại được sử dụng để đánh giá các khía cạnh khác nhau của các qui trình phát triển phần mềm và các kết quả đầu ra của chúng.
Chúng tôi tranh luận rằng bằng việc đánh giá một dự án với lưu ý về 3 yếu tố của tính bền vững - tính mở, khả năng sử dụng lại và khả năng - có khả năng nhấn mạnh các cơ họi cho sự cải tiến trong đổi mới mở, thiết kế sản phẩm và độ chín của qui trình. Điều này tới lượt nó sẽ cho phép các nhà quản lý tìm cách sử dụng lại hoặc phát triển tiếp các kết quả đầu ra của phần mềm, để phân bổ các tài nguyên theo một cách thức phù hợp nhất cho các nhu cầu dự án của họ.
Nếu bạn muốn áp dụng việc xếp hạng tính mở cho dự án của riêng bạn, xin liên hệ với chúng tôi.
Dịch: Lê Trung Nghĩa
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Blog này được chuyển đổi từ http://blog.yahoo.com/letrungnghia trên Yahoo Blog sang sử dụng NukeViet sau khi Yahoo Blog đóng cửa tại Việt Nam ngày 17/01/2013.Kể từ ngày 07/02/2013, thông tin trên Blog được cập nhật tiếp tục trở lại với sự hỗ trợ kỹ thuật và đặt chỗ hosting của nhóm phát triển...