OpenGovernment and Open Source at the Department of Defense - Part 1
Mộtphỏng vấn với Daniel Risascher, Văn phòng giám đốc thôngtin (CIO), Bộ Quôc phòng
Aninterview with Daniel Risascher, Office of the CIO, Department ofDefense
By TanyaGupta
June 26, 12:56 PM
Bài được đưa lênInternet ngày: 26/06/2009
Lờingười dịch: “Trong nguồn mở, thường có sự kiểmsoát phiên bản rất tráng kiện, và bạn có thể thấymỗi dòng mã lệnh nơi mà nó tới, người đặt nó ở đóvà ai đã tiến hành những thay đổi cho nó. Khả năngthanh tra việc đó và tiến hành kiểm soát an ninh là tuyệtvời hơn nhiều trong nguồn mở so với trong các phần mềmsở hữu độc quyền”. Đây là ý kiến của Dan Risacher,người là lãnh đạo về các vấn đề nguồn mở trong BộQuốc phòng (DoD) Mỹ; Dan không chỉ cầm đầu về chínhsách nguồn mở tại DoD, mà còn là một nhà truyền giáovề nguồn mở trong cuộc sống cá nhân của ông, bảnthân từng là một lập trình viên và đã viết một sốmã nguồn mở cho bản thân mình.”
Nguồn mở có thểđược xác định như một phương pháp phát triển phầnmềm mà nó khai thác sức mạnh của quá trình xem xét lạivà minh bạch hoá đồng hàng, phân tán, và sự hứa hẹncủa nguồn mở là chất lượng tốt hơn, độ tin cậycao hơn, tính mềm dẻo nhiều hơn, giá thành thấp hơn vàlà sự kết thúc đối với sự khoá trói vào nhà cung cấpăn cướp (từ tổ chức Sáng kiến Nguồn mở – OSI). Chính phủ Mỹ, bao gồm cả Bộ Quốc phòng đang nắm lấycái nhìn mới về nguồn mở như một cách để đạt đượcsự tiết kiệm chi phí, và cải thiện về chất lượng.Scott McNealy, trong một cuộc phỏng vấn của BBC hồi tháng01 năm nay, nói rằng ông đã được chính quyền mới yêucầu viết một tài liệu về nguồn mở. Chủ tịch OSI,Micheal Tiemann, cũng đã nói rằng chính phủ có thể tiếtkiệm khoảng 400 tỷ USD thông qua việc sử dụng nguồnmở.
Với tất cả sựquảng cáo này, tất cả trở nên quan trọng hơn để xemxét một cách cận cảnh và thực dụng hơn vào nguồn mở.Trong chính phủ liên bang, Bộ Quốc phòng (DoD) là mộtngười bảo vệ chính cho mô hình phát triển nguồn mởvà là một người sử dụng chính của phần mềm nguồnmở. Trong năm 2006, DoD đã xác định một lộ trình côngnghệ mở. Trong năm 2007 CIO của Hải quân đã đưa ra mộtbản ghi nhớ nói rằng nguồn mở phù hợp với địnhnghĩa của phần mềm thương mại. Trong năm 2008 dự luậtcho phép lại ngân sách quốc phòng hàng năm đã khuyếnkhích các giải pháp phần mềm nguồn mở. Trong năm 2009,forge.mil đã được tung ra, một site mà sẽ chứa đựngcác dự án phần mềm nguồn mở công cộng của quân đội(được truyền cảm hứng bởi SourceForge). Văn phòng CIOcủa DoD hiện đang làm việc về sách chỉ dẫn cập nhậtvề nguồn mở mà nó phải được ký sớm bởi Phó CIO,Dave Wennergren (người đã thay thế John Grimes, cựu CIO bâygiờ đã nghỉ hưu).
Vớiđiều đó trong đầu, tôi đã nói chuyện với DanRisacher, người là lãnh đạo về các vấn đề nguồn mởtrong DoD. Dan không chỉ cầm đầu về chính sách nguồn mởtại DoD, mà còn là một nhà truyền giáo về nguồn mởtrong cuộc sống cá nhân của ông, bản thân từng là mộtlập trình viên và đã viết một số mã nguồn mở chobản thân mình.
Ông có bằng Cao họcvề thiết kế kỹ thuật tại Đại học Công nghệ thôngtin Massachusette (MIT), và từng phục vụ như một trung uýkhông quân (được thăng quân hàm thượng uý trong 2 năm).Ông đã bắt đầu tại Văn phòng Cố vấn Bộ trưởngQuốc phòng (Tích hợp thông thin và Mạng)/DoD CIO năm 2004,và từng lãnh đạo việc phác thảo chính sách của DoD vềnguồn mở, làm rõ chính sách của DoD, và một số thứmà đã bị giải thích sai. Tài liệu này sẽ phải đượcxuất bản một cách chính thức vào những tháng tới. Vợông, Suzette, người mà ông rất tự hào, là một lính cứuhoả, và họ có 2 đứa trẻ, Luke và Jamethiel.
Opensource can be defined as a development method for software thatharnesses the power of distributed peer review and transparency ofprocess, and the promise of open source is better quality, higherreliability, more flexibility, lower cost, and an end to predatoryvendor lock-in (f-rom The Open Source Initiative). The USGovernment, including DoD, is taking a new look at open source as away to achieve cost savings, and improvement in quality. ScottMcNealy, in a BBC interview in January of this year, said that he hadbeen asked, by the new administration, to write a paper on opensource. OSI President, Micheal Tiemann, also claimed that thegovernment could save around $400bn dollars through use of opensource.
Withall this hype, it becomes all the more important to take a closer,and a more pragmatic look at open source. Within the federalgovernment, the Department of Defense is a major advocate for theopen development model and is a major use of open source software. In 2006, DoD defined an open technology roadmap. In 2007 theNavy CIO issued a memo said that open source fits in with thedefinition of commercial software. In 2008 the annual defense budgetre-authorization bill encouraged open source software solutions. In 2009, forge.mil was launched, a site that will host the military’spublic open source software projects (inspired by SourceForge). The DoD CIO’s office is current working on up-dated guidance foropen source that should be signed soon by Deputy CIO, Dave Wennergren(who replaced John Grimes, former CIO now retired).
Withthat in mind, I talked to Dan Risacher, who is the lead on OpenSource issues in the Department of Defense. Dan is not only theOpen Source policy wonk at DoD, but is also an open source evangelistin his personal life, having been a programmer himself and writtensome open source code himself. He has a Masters in Engineeringf-rom MIT, and has seen active duty as an Air Force Second Lieutenant(promoted to First Lieutenant in two years). He started at theOffice of the Assistant Secretary of Defense (Networks andInformation Integration)/DoD CIO in 2004, and has been the lead onthe draft DoD policy on open source. This document clarifiesDoD policy on open source, clarifying the advantages of open source,clarifying DoD policy, and some things that have beenmisinterpreted. This document should be formally issued in thecoming months. His wife, Suzette, who he is very proud of, is afirefighter in , and they have two children, Luke and Jamethiel.
Dan,làm thế nào ông có thể xác định phần mềm nguồn mởkhác với phần mềm tự do? Ông đứng đâu trong phong tràophần mềm tự do và nguồn mở?
Phong trào phần mềmtự do là một phong trào xã hội bảo vệ những sự tựdo của các cá nhân trong việc sử dụng phần mềm vàphát triển phần mềm. Nguồn mở là một phương phápphát triển nhiều hơn và có các qui trình nghiệp vụ rấtthực dụng mà chúng tập trung rất nhiều vào cách bạnphát triển phần mềm tốt hơn, thay vì việc bảo vệkhái niệm về sự tự do của cá nhân mà nó thực sự cóliên quan với phong trào phần mềm tự do. Tất cả là nhưnhau, có một số lượng khổng lồ những trùng lắp giữa2 khái niệm này về việc cấp phép và thực tế mà chúngđã được phát triển. Từ viễn cảnh của chính phủthì sẽ không có người nào ủng hộ nhiệt thành hơn vềtự do hơn DoD – Đó là những gì chúng tôi làm, chúngtôi ủng hộ sự tự do và ủng hộ và bảo vệ hiếnpháp của nước Mỹ. Điều đó đã được nói, chúng tôikhông chọn các trận chiến mà chúng tôi sẽ chiến đấu.Những đơn vị khác của chính phủ nói cho chúng tôi khinào và ở đâu tham gia vào những thứ đó, nên nói chúngkhông phù hợp cho DoD tự chọn việc tham gia vào phong tràoxã hội mà nó được đại diện bởi phong trào phần mềmtự do. Tuy nhiên phong trào phần mềm nguồn mở rất thựcdụng mà nó nói rằng hãy xem, đây là một phương thứcphát triển mà nó có những lợi ích nào đó liên quan tớinó trong việc cố gắng trở thành những đầu tàu tốtlành của những người đóng thuế và các tài nguyên côngcộng và cố gắng thúc đẩy những lợi ích có liên quantới phương pháp luận của phần mềm nguồn mở. Về mặtlịch sử, việc nhìn vào một loạt những bản ghi nhớvề chính ách và những thứ mà chúng đã được chínhphủ đưa ra, đặc biệt là DoD và cả khu vực liên bangnữa, đã tập trung vào phần mềm nguồn mở và đứng rakhỏi khái niệm mang hơi hướng chính trị hơn một chútvề “khái niệm phần mềm tự do” và một cách thíchđáng như vậy. Nếu ai đó muốn khuyến khích những giátrị của phong trào phần mềm tự do và khuyến khích tựdo cá nhân mà là thứ gì đó phải tới từ các quan chứcđược bầu, từ Quốc hội hoặc Tổng thống và khôngphải từ một số nhân viên từ bên trong một cơ quannhánh hoạt động đặc biệt nào. Đó là cách mà tôi cóthể phân tách biệt đứa trẻ đó. Chúng tôi là nhữngngười ủng hộ nhiệt thành khái niệm y hệt về tự domà tổ chức Phần mềm Tự do đang khuyến khích, nhưngchúng tôi có những ông chủ mà họ nói với chúng tôinhững gì phải làm, nhiệm vụ của chúng tôi là hỗ trợvà bảo vệ hiến pháp, bảo vệ nước Mỹ, và không cầnthiết phải khuyến khích sự tự do cá nhân trong lĩnh vựcxã hội này.
Dan,how would you define open source vs. free software? Whe-re do youstand in the free software and open source movements?
TheFree software movement is a social movement advocating individualliberties in software use and software development. Open sourcemuch more a development methodology and has very pragmatic businessprocesses that are very much focused on how do you do softwaredevelopment better, rather than advocating the concept of individualliberty that is really associated with the free software movement. All the same, there is a tremendous amount of overlap between thosetwo in terms of the licensing and practices that have beendeveloped. F-rom the government’s perspective there is not amore ardent supporter of liberty than the Department of Defense (DoD)- that’s what we do, we support liberty and support and defendconstitution of the United States. That having been said, we don’tchoose battles that we will fight. Other branches of government tellus when and whe-re to engage on things, so in general it is notappropriate for DoD to be choosing on its own to engage in the socialmovement that is represented by the free software movement. Howeverthe very pragmatic open source software movement that says that look,this is a development methodology that has certain benefitsassociated with it in trying to be good stewards of taxpayers and thepublic resources and trying to leverage those benefits associatedwith the open source software methodology. Historically,looking at various policy memos and things that have come out ofgovernment, specifically DoD, but also the federal space, havefocused on open software and stayed away f-rom the somewhat morepolitically c-harged term of “free software term” andappropriately so. If someone wants to promote the values of the freesoftware movement and promote individual liberty that is somethingthat should be coming f-rom elected officials, f-rom Congress orPresident and not some workers f-rom within a specific executivebranch agency. That’s how I would split that baby. Weare the ardent supporters of the same concept of liberty that thefree software foundation is promoting, but we have bosses that tellus what to do, our mission is to support and defend the constitution,protect the united states, and not necessarily to promote individualliberty in the social arena.
Nhữnggì là một vài rủi ro và cơ hội đối với chính phủtrong việc sử dụng nguồn mở? Làm thế nào có thể quảnlý được những rủi ro này?
Có 2 cơ hội mà tôicó thể thấy. Một là đó là có một cơ hội khổng lồtrong việc có một khối khá lớn về phần mềm mở hiệnđang tồn tại mà chúng ta có thể sử dụng, nhưng vềlịch sử thì điều đó đã bị đánh giá thấp vì thiếusự hiểu biết, hoặc chỉ dẫn về qui trình nghiệp vụcó liên quan tới nguồn mở, như cách mà chúng ta ra ngoàivà mua những khả năng và đồ vật.
Ví dụ, chúng ta cóthể đi ra ngoài và nhìn vào thị trường, và nói “Cáinày bao nhiêu tiền?” “Tôi cần một trong những thứnày” và chúng ta thuê một nhà thầu để đi ra ngàoi vàxây dựng cho chúng ta một hệ thống mà nó không sử dụngcái khối phần mềm đang tồn tại này. Chỉ vì khôngđược xem xét tới, nó không phải là một phần của sựphân tích có trong quyết định mua sắm. Điều này tươngđương với cả trong khu vực thương mại và trong khu vựcchính phủ. Chúng ta đã trở nên hiểu biết hơn về thựctế là, ê, tôi có thể mua một hệ thống đang có sẵntừ các nhà cung cấp sở hữu độc quyền như Microsoft,hoặc từ Red Hat hạơc bất kỳ nhà cung cấp nguồn mởnào.
Một cơ hội khác, làviệc có phương pháp phát triển theo cách mà chúng ta pháttriển phần mềm một cách hợp tác, mà nó đã đượccoi là rất hiệu quả trong thế giới nguồn mở, và chúngta muốn một số thứ đó, chúng ta muốn chỉ ra cách bạnđạt được mức độ đó của việc hợp tác bên trongdoanh nghiệp quốc phòng. Và điều đó hoá ra là sẽ rấtkhó vì hầu hết sự phát triển các phần mềm mà chúngta làm đã được thực hiện bởi các nhà thầu, các nhàtích hợp hệ thống, và có một số thách thức theo cáchnày mà một số luật mua sắm của liên bang đã viết.
Nói chung, nếu tôitrả tiền cho một nhà thầu quốc phòng vì bất kỳ mụcđích hợp pháp nào của chính phủ (phụ thuộc nhiều vàonhững chi tiết về cách mà các nhà thầu đó làm việc),mà họ có quyền thương mại hoá tài sản đó. Vì thếnếu tôi muốn chia sẻ nó, thì tôi có thể có khả năngchia sẻ nó trong những trường hợp đặc biệt với nhữngnhà thầu quốc phòng khác nhưng để chia sẻ nó một cáchrộng rãi hơn và thực sự thiết lập nên một cộng đồngnhững người mà đang phát triển xung quanh một nền tảngđặc thù về mã nguồn phần mềm nào đó hoá ra là sẽlà một thách thức. Điều này là không thể mà nó làkhó vì những hạn chế. Trong một số trường hợp chínhphủ sở hữu tất cả các quyền, điều này được gọilà có những quyền không hạn chế, trong những trườnghợp như vậy, chính phủ có thể làm bất kỳ thứ gìmình muốn, nhưng trong nhiều trường hợp chúng ta còn kếtthúc với những quyền về mục tiêu của chính phủ, mànó vẫn khá là rộng rãi, nhưng có đủ những hạn chếmà nó trở thành thách thức để đạt được một cáchsử dụng lại từ một chương trình này tới một chươngtrình khác. Vì thế chúng ta đang cố gắng chỉ ra cơ hộiđó – cách chúng tiến hành phát triển phần mềm mộtcách hợp tác theo cách mà cộng đồng nguồn mở đang làmvì những vấn đề đặc biệt của quốc phòng chăng?
Whatare some of the risks and opportunities for the federal government inusing open source? How can the risks be managed?
Thereare two opportunities that I can see. One is that there is atremendous opportunity in that there is a fairly large body ofexisting open software that we can go use, but that has beenhistorically under-appreciated because of the lack of understandingof, or guidance on business processes related to open source, such ashow we go out and acquire capabilities and buy stuff. . For instance, we might go out and look at a marketplace, and say “howmuch does that cost?” “I need one of those” and we hire acontractor to go out and build us a system that doesn’t make use ofthis existing body of software. It’s just not considered,it’s not part of the analysis that goes into the purchasedecision. This is prevalent both in the commercial space and inthe government space. We’ve become more aware ofthe fact that, hey, I can buy an existing system f-rom proprietaryvendors such as Microsoft, OR f-rom Red Hat or any of the open sourcevendors.
Theother opportunity, is that there is this development methodology ofhow we collaboratively develop software, which has been seen to bevery effective in open source world, and we want some of that, wewant to figure out how do you achieve that level of collaborationwithin the defense enterprise. And that turns out to be verydifficult because most of the software development that we do is donethrough contractors, systems integrators, and there are somechallenges in the way that some of the federal acquisitions laws werewritten. In general, if I go pay a defense contractor todevelop some software, they own the copyright to that, and the govtmay get the rights to use that for any legitimate govt purpose(depending a lot on the details of how the contracts work), but theyhave the right to commercialize that property. So if I want toshare it, I may be able to share it in specific cases with otherdefense contractors but to be to share it more broadly and to reallyestablish a community of people who are developing around a specificbase on software code turns out to be challenging. It’s notimpossible but it is hard because of the restrictions. In some casethe government owns all the rights, this is called having unlimitedrights, in such cases, the government can do whatever it wants, butin a lot of the cases we still end up with government purpose rights,which is still fairly broad, but has enough restrictions that itbecomes challenging to achieve a measure of re-use f-rom one programto another. So we are trying to figure out that opportunity-howdo we do collaborative software development the way that the opensource community is doing it for defense specific problems ?
Rủiro
Từ quan điểm rủiro, cùng với việc xem xét các cơ hội tôi đã nói tới,chúng ta cần phát triển một tập hợp các năng lực, cácphương pháp luận, có thể theo khái niệm về đánh gíađộ chín của phần mềm. Đối với cả phần mềm nguồnmở và sở hữu độc quyền – làm thế nào tôi xác địnhđược rằng nó là tốt chứ? Chúng ta có thể thực hiệnviệc đánh giá hoặc một vài thử nghiệm với nó nhữngchúng ta không cần phải bỏ ra quá nhiều thời gian đểhiểu mọi thứ như, “vâng công ty đó tốt thế nào khisẽ hỗ trợ phần mềm đó?” Và điều đó còn phứctạp hơn nữa trong phần mềm mở, nơi mà nó có thểkhông có cả một công ty; nó có thể là một quỹ hoặcnhóm người sử dụng hoặc những người mà sử dụngphần mềm đó – một bang hội khá là lỏng lẻo.
Có một rủi ro đượcthừa nhận về nguồn mở từ một quan điểm an ninh, mọingười rất lo lắng về việc sử dụng phần mềm và nóhoặc “tôi không biết nó tới từ đâu”, hoặc “nhữngcửa hậu nào đã được đặt vào trong phần mềm này”.Tôi nghĩ điều này đầy rẫy ở qui mô rộng lớn, mọingười không biết các phần mềm sở hữu độc quyềncủa họ được viết ở đâu hoặc cũng không biết nhữngcửa hậu ở đâu bên trong chúng. Trongnguồn mở, thường có sự kiểm soát phiên bản rấttráng kiện, và bạn có thể thấy mỗi dòng mã lệnh nơimà nó tới, người đặt nó ở đó và ai đã tiến hànhnhững thay đổi cho nó. Khả năng thanh tra việc đó vàtiến hành kiểm soát an ninh là tuyệt vời hơn nhiềutrong nguồn mở so với trong các phần mềm sở hữu độcquyền.
Thếthì nó sẽ là an toàn hay không an toàn?
Vâng... chắc chắn cósự chấp nhận từ lâu trong thế giới an ninh hàn lâm vềtầm quan trọng của tính mở như một nguyên tắc của anninh. Bạn thực sự không muốn tin vào ngôi nhà của bạnđối với một chiếc khoá khó xử mà không ai biết làmthế nào để giải quyết ngoài bạn. Sớm muộn gì thìngười đó cũng sẽ đi với ai thông minh hơn bạn và anhta sẽ giải quyết bài toán đố này. Bạn muốn rằng anninh sẽ là một phần của của chìa khoá. Cơ chế vềcách mà ổ khoá làm việc được hiểu tốt nhưng mọingười vẫn không biết cái chìa khoá giống cái gì, nênđiều đó là cách tốt hơn nhiều để có an ninh. Có mộttài liệu tuyệt vời từ năm 1974 của Jerome H. Saltzer vàMichael D. Schroeder, được gọi là “Bảo vệ thông tintrong các hệ thống máy tính”. Các tác giả đã nói rằngtính mở là một đặc tính quan trọng cho an ninh. Nếu tôiđang dựa vào sự tù mù và thực tế rằng đây là mộthệ thống ít được biết tới để thực sự đảm bảorằng không có một điểm yếu nào trong nó – nếu bấtkỳ thứ gì mà dẫn tới theo một đường hướng sai lầm.Càng bí mật bao nhiêu, thì có lẽ nócàng được thiết kế bởi chỉ một người hoặc mộtnhóm nhỏ và có lẽ là thứ gì đó mà họ đã không nhậnra, so với việc nếu tôi có thứ gì đó mà nó là đượccông khai rộng rãi – các cơ chế và mã nguồn của thuậttoán – thì sự rõ ràng và đôi khi là những thiếu sótkhông thật rõ ràng sẽ bị phát hiện ra bởi ai đó nếunó là mở. Các nhà nghiên cứu về an ninh sẽ trà xát nóqua lại, xem xét để gọi tên cho bản thân họ và bạnhưởng lợi từ sự rà soát lại đó. Vì thế thực sựquá trình xem xét lại sẽ giúp bạn đạt được an ninhtốt hơn và phần mềm nguồn mở cho phép việc xem xétlại đó diễn ra theo cách mà nó là rất khó khăn hoặccó thể không đạt được với thế giới phát triểnphần mềm sở hữu độc quyền.
Risk
F-roma risk standpoint, along with looking at the opportunities I talkedabout, we need to develop a set of competencies, of methodologies,perhaps in terms of evaluating the maturity of software. Bothfor open source, and proprietary software – how do I determine thatit is any good? We may do evaluations or some experiments withit but we don’t necessarily spend too much time understandingthings like, “well how well is that company going to support thatsoftware?” And that is even more complicated in open software whe-reit may not even be a company; it may be a foundation or user group orpeople who use that software – a fairly loose federation.
Thereis a perceived risk of open source f-rom a security standpoint, peopleare very concerned about using software and it’s either “I don’tknow whe-re it comes f-rom”, or “what backdoors have been put inthe software”. I think it is largely a red herring, peopledon’t know whe-re their proprietary software was written either nordo they know whe-re the backdoors are in that. In open source,there is usually very robust version control, and you can see everyline of code whe-re it came f-rom, who put it there and who madechanges to it. The ability to do that inspection and dosecurity audits is much greater in open source than in proprietarysoftware.
Thenit would be as safe if not safer?Yes..certainly there is a long standing acceptance in theacademic security world of the importance of openness as aprinciple of security. You really don’t want to trust your house toa puzzle lock that nobody know how to solve but you. Sooner orlater the guy is going to come along who is smarter than you are andhe is going to solve the puzzle. You want that security to bepart of the key. The mechanism of how the clock works is wellunderstood but people still don’t know what the key looks like, sothat is a much better way to do security. There’s a great paperf-rom 1974 by Jerome H. Saltzer and Michael D. Schroeder, called “TheProtection of Information in Computer Systems”. The authorssaid that openness is an important c-haracteristic for security. This strikes people as hard to understand. I want to knowhow it works so that I know it is secure. If I am relying onobscurity and the fact that this is a little known system to reallyguarantee that there is no weakness in it – if anything that isdriving in the wrong direction. The more secretive it is, themore likely it is that it was designed by one guy or a small team ofpeople and there is probably something they overlooked, vs. if I havesomething that is widely publicized - algorithms code and mechanisms- then the obvious and sometimes the not so obvious flaws will bediscovered by somebody if it is open. Security researchers willcomb it over, looking to make a name for themselves and you benefitf-rom that review. So it is really the process of review helpsyou achieve better security and open source software enables thatreview to take place in a way that is very difficult or can’t benecessarily matched by the proprietary software development world.
Làmthế nào chúng ta có thể đảm bảo được chất lượngtrong các phần mềm nguồn mở? Liệu chúng ta có thể mượntừ các mô hình như các mô hình độ chín của quá trìnhcủa Viện Thiết kế kỹ thuật Phần mềm (SEI) mà nóđược xây dựng cho các phần mềm nguồn đóng hay không?
Tôi chắc bạn có thểdẫn xuất điều tương tự của phần mềm mở về cácquá trình CMM và những thực tế tốt nhất có thể sẽcó những người mà đã làm nó. Tôi đã thử tự làm chomình – khi một vài năm trước khi tôi vẫn còn phục vụtrong không quân, tôi đã lấy các quá trình theo mô hìnhđộ chín về khả năng (CMM) (từ SEI) và đã cố thử dẫnxuất từ đó, một mô hình quá trình cho các phần mềmnguồn mở.
Nhưng thường xuyênhơn, từ một quan điểm chất lượng, một trong những lýdo có lợi của nguồn mở là bản thân tính mở. Hãy đểtôi sử dụng một sự tương tự – nếu bạn có mộtcăn phòng đầy người và bạn hỏi họ “Có bao nhiêungười trong số các bạn khi rửa ô tô, ở mui xe, và rửamáy?”, và thường là nếu bạn hỏi một căn phòng đủđầy người, thì sẽ có một vài người sẽ thường giơtay của họ và nói “tuyệt đối chắc rồi”. Và cóthể đánh cược vài đô la bánh rán rằng nếu bạn hỏihọ “kiểu ô tô nào các bạn có?”, thì sẽ có mộtlớp cổ điển, nó sẽ là một ô tô triển lãm, đây làmột ô tô mà họ tự hào về nó, và họ muốn trình diễnnó, và họ mong đợi làm cho nó được trình diễn và mởmui xe và nhờ mọi người nhìn vào máy. Tôi không rửamui xe của mình, xe của tôi đưa tôi đi làm và trở vềnhà và thế thôi. Vấn đề của sự tương tự giốngnhau là việc khi bạn mong đợi ai đó nhìn vào bên trong,thì bạn có được một chút tự hào về chủ quyền, vàbạn đang đảm bảo chắc chắn là nó sạch sẽ, và phầnmềm nguồn mở, và điều này được lưu lại bởi cácthống kê.
Tất cả y như nhau,bạn không thể lấy sự tổng quát hoá rộng rãi về chấtlượng mà phần mềm mở là chất lượng cao hơn so vớiphần mềm sở hữu độc quyền khi nó phụ thuộc vàonhững thứ đặc chủng. Có những phần mềm nguồn mởmà nó là nguồn mở vì ai đó đã viết nó trong một giờđồng hồ và đã ném nó đi khỏi đó và nó không tốt.Tôi đã từng tự mình viết một số, tôi đã lấy mộtvài mã nguồn có sẵn và bổ sung một tính năng mà tôicần – nó đã làm việc nhưng đã không thật tốt. Điềunày là vì 4-5 người đã làm việc trên nó, một số viếtnó, một số đã cải tiến nó và chỉ thế thôi. So sánhquá trình này, mặt khác với Linux hoặc Apache, thứ gì đómà đã có rất nhiều lập trình viên đã tham gia, và rấtnhiều qui trình xem xét lại được thực hiện, trong nhữngtrường hợp đó, tôi nghĩ các phần mềm đó có xu hướngsẽ có chất lượng rất cao, tôi nghĩ bạn có thể thấymột dãy tương tự trong chất lượng trong nguồn đóng,ví dụ các viên kim cương của các vương miện đượcviêgts bởi ai đó mà họ đã rất thông minh và có nănglực, tới những thứ mà đã được viết trong một buổichiều và đã không được xem xét lại một cách phù hợptrước khi được đẩy ra ngoài cửa. Vì thế khó mà làmmột sự tổng quát hoá được, tôi có thể nói nguyên lýcủa tính mở giúp hướng tới chất lượng trong các phầnmềm thông qua quá trình xem xét lại đó.
Xem video bài nóichuyện của Yochai Benkler: Nềnkinh tế nguồn mở.
Howcan we ensure quality in open source software? Can we borrowf-rom models such as the Software Engineering Institute’s (SEI)process maturity models that were built for closed source software?
Iam sure you can derive the open software equivalent of the CMMprocesses and best practices are probably there are people who havedone it. I tried to do so myself – when some years ago when I wasstill in the air force active duty, I took the Capability MaturityModel (CMM) processes (f-rom SEI) and tried to derive f-rom that, aprocess model for open source software
Butmore generally, f-rom a quality standpoint, one of the arguments infavor of open source is openness itself. Let me use an analogy– if you have a room full of people and you ask them “how many ofyou when you wash your car, open your hood, and wash the engine?”,and usually if you ask a big enough room full of people, there willbe a couple of people will usually raise their hands and say“absolutely”. And can bet a dollars to donuts that if youask them “what kind of a car do you have?”, it will be a classicantique, it will be a show car, it is a car that they are proud of,and they want to show it off, and they expect to take it to a showand open the hood and have people looking at the engine. Idon’t wash the hood of my car, my car takes me to work and back andthat’s it. The point of that the analogy is that when youexpecting someone to take a look at the internals, you take a littlebit more pride of ownership, and you are going to make sure that isclean, and the open source software, and this backed up bystatistics.
Allthe same, you can’t make broad generalizations on quality that opensoftware is higher quality than proprietary software as it depends onthe specifics. There’s open source software which is opensource because someone wrote it in an hour and threw it out there andit’s not very good. I have written some myself, I took someexisting code and added one feature I needed - it worked but wasn’tvery good. This is because 4-5 people worked on it, somebody wroteit, somebody enhanced it and that was it. Compare this process,on the other hand to linux or Apache, something that had a lot ofdevelopers involved, and a lot of review processes involved, in thesecases, I think that software tends to be very high quality, Ithink you would find a similar range in quality in closed source, forinstance crown jewels written by someone who was very smart anddiligent, to things that were written in one afternoon and did notget properly reviewed before being pushed out of the door. Soit’s hard to make generalization, I can say principle of opennesshelps drive quality into the software through that process of review.
Dịch tài liệu: 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...