Đặt trong bối cảnh khoa học công nghệ phát triển từng ngày, trình độ dân trí ngày càng được nâng cao kéo theo đó là một loạt các tiện ích, các ứng dụng phát triển theo, phần mềm nguồn mở
PHẦN MỀM MÃ NGUỒN MỞ
Mã nguồn mở, phần mềm mã nguồn mở là gì?
Phần mềm (software) bao gồm các thuật toán và các biểu diễn cho máy tính của chúng, đó chính là các chương trình Chương trình có thể được biểu diễn trên bìa đục lỗ, trên băng từ, đĩa từ và các môi trường khác, tuy nhiên cái cơ bản nhất của phần mềm chính là tập các chỉ thị tạo nên chương trình chứ không phải là môi trường vật lý được sử dụng để ghi chương trình [1;tr5]
Cho đến nay, mặc dù vô số máy tính đã được thiết kế và chế tạo, khái niệm về phần mềm vẫn được định nghĩa chỉ bằng ba yếu tố chính:
- Chương trình: biểu diễn dưới dạng mã nguồn hay mã máy Mã nguồn hay mã máy đó là một tập các chỉ thị lệnh được viết dưới dạng một ngôn ngữ lập trình Tập chỉ thị này có tác dụng như một loại ngôn ngữ trung gian giữa con người và máy tính, con người dùng ngôn ngữ lập trình này để giao tiếp với nhau và thông qua đó ra lệnh cho máy tính thực hiện “chỉ thị lệnh” đó để nhằm đưa đến kết quả họ mong muốn Việc dịch mã nguồn, mã máy từ tập chỉ lệnh đưa vào đó thường thông qua một trình biên dịch hoặc một trình thông dịch
Hình 1.1 Ví dụ về một đoạn mã máy
- Cấu trúc dữ liệu: là một cách cấu trúc dữ liệu trong bộ nhớ, đó là cách người ta cài đặt cấu trúc ấy trên máy tính điện tử và dựa trên cơ chế lưu trữ này mà thực hiện các phép toán, các xử lý Khi đề cập đến cấu trúc lưu trữ, người ta phân biệt thành hai loại cấu trúc lưu trữ, đó là: cấu trúc lưu trữ tương ứng với bộ nhớ trong- lưu trữ trong,
5 hay ứng với bộ nhớ ngoài- lưu trữ ngoài Để cho dễ hiểu, giả sử dữ liệu mà ta cần lưu trữ là số sách trong thư viện, vậy dữ liệu được sắp xếp sẽ là sách mà ta đã sắp xếp bằng cách phân chia theo thể loại, theo danh mục tác giả, nhà xuất bản,… Dữ liệu được tổ chức trong máy tính cũng vậy, sẽ được lưu trữ dựa theo 1 tiêu chí nào đó tùy thuộc vào hệ quản trị cở sở dữ liệu
Hình 1.2 Ví dụ về tổ chức dữ liệu
Tài liệu phần mềm là một phần thiết yếu đi kèm với bản phần mềm hoàn chỉnh, bao gồm cả tài liệu kỹ thuật chuyên sâu (tài liệu đặc tả, thiết kế, phân tích hệ thống) và tài liệu hỗ trợ người dùng (hướng dẫn sử dụng, tài liệu trợ giúp) nhằm giúp người dùng hiểu rõ, thao tác và sử dụng phần mềm hiệu quả.
1.1.2 Mã nguồn mở là gì?
Mã nguồn mở là những phần mềm được cung cấp dưới dạng cả mã và nguồn, miễn phí cả về giá và cả bản quyền- thể hiện ở chỗ người dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một vài nguyên tắc chung được quy định trong giấy phép phần mềm nguồn mở mà không cần xin phép ai, và chức năng này hoàn toàn không có đối với các phần mềm nguồn đóng Tóm lại, thuật ngữ mã nguồn mở- “Open source” được dùng để lôi cuốn các doanh nhân trên khía cạnh của sự miễn phí và
“quyền sở hữu hệ thống”
Mã nguồn mở là miễn phí về việc cấp mã và quyền sử dụng được tự do, nhưng nhà cung cấp mã nguồn vẫn có thể thu một phần phí cho việc bảo hành, huấn luyện, nâng cấp, tư vấn xây dựng, cài đặt phần mềm…cho doanh nghiệp dựa trên những mã nguồn mở được toàn quyền sử dụng đó Đó là chính đáng, vì họ không bán sản phẩm mã nguồn mở bởi nó là sản phẩm trí tuệ chung của cả một cộng đồng, không thuộc riêng đối tượng nào, nhưng có có quyền thu phí từ những dịch vụ mà họ phục vụ người dùng
Xét đến lợi ích mà phần mềm nguồn mở mang lại, khá nhiều và khá hữu ích đó là quyền tự do sử dụng mọi chương trình, cho mọi mục đích, tự do nghiên cứu cấu trúc, tự do chỉnh sửa, tùy biến, truy cập tới mã nguồn, tự do phân phối, phát hành những bản sửa đổi phục vụ cho mục đích của cộng đồng
1.1.3 Khái niệm phần mềm mã nguồn mở
Theo Dabid Wheeler, một cách ngắn gọn, chương trình phần mềm nguồn mở là những chương trình mà quy trình cấp phép sẽ cho người dùng quyền tự do chạy chương trình theo bất kỳ mục đích nào, quyền nghiên cứu và sửa đổi chương trình, quyền sao chép và tái phát hành phần mềm gốc hoặc phần mềm đã sửa đổi “mà không phải trả tiền bản quyền cho những người lập trình trước”
Phần mềm mã nguồn mở/tự do (gọi tắt là FOSS) đã trở thành một hiện tượng toàn cầu, đi từ vị trí tương đối mờ nhạt lên thành một trào lưu thời thượng trong vòng có vài năm Tuy nhiên, vẫn chưa có nhiều người hiểu một cách thấu đáo những yếu tố gì thật sự tạo nên FOSS và sự bùng nổ của khái niệm này
Có hai tư tưởng chủ đạo chi phối thế giới phần mềm nguồn mở: tư tưởng của
Tổ chức Phần mềm tự do (Free Software Foundation-FSF) và tư tưởng của Chương trình Sáng kiến Nguồn mở (OSI- Open Source Initiative) Chúng ta hãy bắt đầu từ thuyết của FSF, vì học thuyết này ra đời sớm hơn và có vị trí tiên phong trong trào lưu phần mềm nguồn mở
Theo thuyết của FSF, phần mềm miễn phí nhằm mục đích bảo vệ bốn quyền tự do của người dùng:
- Quyền tự do chạy một chương trình với bất kỳ mục đích nào
- Quyền tự do nghiên cứu cách thức vận hành của một chương trình và thích ứng nó cho phù hợp với nhu cầu của mình Khả năng tiếp cận mã nguồn là điều kiện tiên quyết cho việc này
- Quyền tự do phát hành các phiên bản của phần mềm để giúp đỡ những người xung quanh
- Quyền tự do thêm mới các chức năng cho một chương trình và công bố những tính năng mới đó đến công chúng để toàn cộng đồng được hưởng lợi
Khả năng tiếp cận mã nguồn là điều kiện tiên quyết cho việc này
Trung tâm của tư tưởng FSF là quyền tự do hợp tác Vì phần mềm phi tự do (Free ở đây nghĩa là Freedom chứ không bởi vì vấn đề giá cả) hạn chế quyền tự do hợp tác, FSF coi phần mềm và những hạn chế khác theo luật bản quyền hiện hành Tất cả những điều này đều hạn chế bốn quyền tự do của người dùng như đã nêu ở trên Ý tưởng chủ đạo đằng sau phần mềm nguồn mở của OSI rất đơn giản: khi người lập trình có thể đọc, lưu hành, và sửa đổi mã nguồn của một phần mềm, thì phần mềm đó ngày càng phát triển Người ta đọc, điều chỉnh, sửa lỗi nhanh chóng gấp nhiều lần so với phần mềm nguồn đóng
Lợi ích của việc sử dụng phần mềm mã nguồn mở
Lợi ích của việc sử dụng phầm mềm mã nguồn mở:
Lợi ích kinh tế là lợi ích hàng đầu của phần mềm nguồn mở Sử dụng phần mềm nguồn mở gần như không tốn kém: miễn phí bản quyền, miễn phí nâng cấp trong suốt quá trình sử dụng, tiết kiệm chi phí phát triển phần mềm theo nghiệp vụ Các chi phí chủ yếu là tư vấn, triển khai, sửa đổi theo yêu cầu, đào tạo người dùng Do đó, phần mềm nguồn mở giúp tiết kiệm 75-80% chi phí so với phần mềm bản quyền ngay trong năm đầu tiên.
Phần mềm mã nguồn mở không đòi hỏi cấu hình máy tính cao, ngay cả máy tính cấu hình yếu như Pentium II, III với ổ cứng 6GB cũng có thể chạy mượt mà Hệ điều hành Ubuntu cho phép các máy tính này trở thành máy chủ hoạt động liên tục 24/24, điều mà phần mềm thương mại không thể làm được.
Mã nguồn mở đem đến khả năng tùy biến theo nhu cầu của người dùng, cho phép tùy chỉnh theo ngôn ngữ, văn hóa, thị trường và nơi sản phẩm được tiêu thụ Điều này giúp sản phẩm đáp ứng tốt hơn nhu cầu của người dùng tại các khu vực khác nhau, tăng khả năng tiếp cận và phát triển thị trường.
- Giảm sự khóa trói vào một nhà cung cấp phần mềm nên đảm bảo chất lượng dịch vụ, giảm sự tranh cãi về chi phí, dịch vụ, nâng cấp, mở rộng hệ thống…
- Tăng tính thương hiệu cho doanh nghiệp: đối với các hệ thống đang hoạt động, chủ động thực hiện chuyển đổi sẽ tránh được nguy cơ bị phạt bản quyền và/hoặc bị bắt buộc mua bản quyền, giảm vấn đề vi phạm bản quyền, quyền sở hữu trí tuệ và tuân thủ WTO
- Tăng cường độ tin cậy: có thể kiểm tra mã độc đối với mã nguồn đi kèm
Phần mềm nguồn mở được xây dựng dựa trên các tiêu chuẩn mở đóng vai trò nền tảng giao tiếp giữa các phần mềm Nhờ đó, phần mềm nguồn mở có thể dễ dàng nâng cấp và mở rộng để đáp ứng các yêu cầu thay đổi của công việc và hệ thống.
- An toàn: mã nguồn mở được sử dụng rộng rãi giúp người lập trình và người sử dụng dễ phát hiện, khắc phục các lỗ hổng an toàn trước nguy cơ bị lợi dụng
- Tránh được hiện tượng chảy máu chất xám: sinh viên được đào tạo về khoa học máy tính và phần mềm không còn đi tìm những công việc phù hợp với khả năng của họ ở các nước khác mà có thể làm việc ở đất nước mình tránh được hiện tượng chảy máu chất xám
- Giảm lệ thuộc vào xuất khẩu: các nước đang phát triển đều đang nhập khẩu phần mềm bản quyền với chi phí khổng lổ, vì thế thay vì phải đi mua phần mềm bản quyền thúc đẩy phát triển phần mềm nguồn mở sẽ tiết kiệm được ngân quỹ dự trữ, số tiền này có thề dùng hiệu quả hơn cho những mục tiêu khác Nguồn nhân lực trong nước trong ngành khoa học máy tính và phần mềm cùng với chính sách khuyến khích phát triển, sử dụng phần mềm một cách phù hợp chính là yếu tố quyết định giảm lệ thuộc vào xuất khẩu
- Giảm tình trạng vi phạm bản quyền phần mềm Vấn đề về bản quyền là một vấn đề đang được Chính phủ và xã hội quan tâm trong thời kỳ hội nhập hóa, đặc biệt là khi
Việt Nam đã gia nhập Tổ chức Thương mại Thế giới (WTO) Do vậy việc sử dụng phần mềm nguồn mở là một giải pháp để tiết kiệm về chi phí cũng như tuân thủ các quy định về bản quyền phần mềm tại Việt Nam
Có một vài ưu điểm mà mã nguồn mở đưa ra được cho là ưu thế hơn phần mềm nguồn đóng, thể hiện như sau:
Tất cả các phần mềm đều có lỗi và người ta phải liên tục “vá lỗi” với điều kiện người phát triển phần mềm phải phát hiện ra các lỗi đó Phần mềm nguồn mở được đưa tới cộng đồng, rất nhiều người có thể truy cập và tùy biến mã nguồn đó, các lỗi có xu hướng bị phát hiện nhanh hơn và nhiều hơn
Việc truy cập mã nguồn thuộc về người tạo ra sản phẩm phần mềm và ngoài họ ra ai có thể có quyền truy cập tới mã nguồn nữa là tùy sự ưu tiên của riêng người sở hữu về an ninh Việc có thể truy cập tới mã nguồn thuận lợi cho việc “vá lỗi” về an ninh, hoặc cải thiện các tính năng hoặc khai thác triệt để tài nguyên Như vậy việc sử dụng phần mềm nguồn mở hay nguồn đóng sẽ đảm bảo an toàn hơn?
Tùy biến phần mềm là việc người dùng chỉnh sửa hoặc thích nghi trong phạm vi mà nhà cung cấp ban đầu đưa ra Người dùng có thể sử dụng phần mềm nguồn mở đó để thuê một bên thứ ba tạo ra một sản phẩm theo nhu cầu của mình nhưng không vượt quá khuôn khổ, quy định ban đầu của phần mềm gốc, nhưng lúc này bạn sẽ phải trả một khoản phí cho người lập trình viên mà phục vụ nhu cầu đó của bạn
Phần mềm mã nguồn mở dễ dàng để dịch ngôn ngữ của giao diện phần mềm Phần lớn các nhà cung cấp phần mềm thương mại, nguồn đóng thường không có thiện chí dịch các sản phẩm của họ sang các ngôn ngữ được nói ít rộng rãi hơn, khi mà thị trường đối với họ có thể quá bé để đảm bảo lợi nhuận Một ví dụ của điều này là chính phủ vùng South Tyrol, đơn vị đã phát triển một phiên bản của OpenOffice trong ngôn ngữ Ladin địa phương, nó có khoảng 30.000 người nói tiếng này
Phân biệt một số khái niệm ngược nghĩa, khái niệm liên quan
Là loại phần mềm mà mã nguồn không được công bố Người muốn sử dụng mã nguồn của loại phần mềm này buộc phải mua lại bản quyền sử dụng mã nguồn từ chính người hoặc tổ chức tạo ra phần mềm đó Mọi hình thức xâm nhập, sao chép, chỉnh sửa, phân phối, crack, … bất hợp pháp đều không được cho phép đối với loại phần mềm này Thông thường phần mềm nguồn đóng thường là phần mềm sở hữu độc quyền
1.3.2 Phần mềm thương mại và phần mềm sở hữu độc quyền
Phần mềm thương mại, hiếm khi gọi là phần mềm trả tiền (payware), là phần mềm được sản xuất nhằm mục đích buôn bán hoặc phục vụ cho các mục đích thương mại
1.3.2.2 Phần mềm sở hữu độc quyền
Phần mềm nguồn đóng (đóng về mã nguồn) là phần mềm sở hữu độc quyền, đối với loại phần mềm này người dùng (và cả những hãng phần mềm khác) bị giới hạn quyền truy cập, tùy biến nó với nhu cầu riêng
Phần mềm miễn phí là loại phần mềm cho phép người dùng sử dụng mà không phải trả bất kỳ chi phí nào và không giới hạn thời gian sử dụng Dù là phần mềm độc quyền có giá bằng 0, tác giả vẫn có thể hạn chế một hoặc nhiều quyền như sao chép, phân phối hoặc tạo sản phẩm phái sinh Giấy phép phần mềm có thể áp dụng các hạn chế về mục đích sử dụng như sử dụng cá nhân, không ủy quyền, thương mại, nghiên cứu, mục đích kinh doanh hoặc bất kỳ mục đích nào khác Ví dụ, một giấy phép có thể ghi là "miễn phí cho cá nhân nhưng không sử dụng cho mục đích thương mại" Người dùng có thể tìm loại phần mềm này trên Internet, tải về và sử dụng tự do.
17 hỏi và mức độ bắt buộc khác nhau, tất nhiên bạn phải chịu trách nhiệm với những thao tác mình làm trong quá trình tải và sử dụng phần mềm)
Có nhiều loại phần mềm miễn phí, có thể là:
- Loại phần mềm có giá thấp hơn giá thông thường: phần mềm quảng cáo, phần mềm dùng thử
- Phần mềm miễn phí hoặc lệ phí tự chọn
Phần mềm tự do (Free Software hay Software Libre) được định nghĩa về các quyền tự do mà nó cung cấp:
- Tự do chạy chương trình với bất kỳ mục đích nào
- Tự do nghiên cứu cách chương trình hoạt động và thích ứng với nhu cầu của bạn, do đó nó yêu cầu cần được cung cấp mã nguồn
- Tự do phân phối lại bản sao để có thể giúp đỡ những người xung quanh
- Tự do trong phân phối lại bản sao và tự do cải tiến chương trình và phát hành những cải tiến cho công chúng, để phục vụ lợi ích của cộng đồng, một lần nữa đòi hỏi sự phân phối lại mã nguồn
Tóm lại phần mềm tự do là phần mềm tự do chạy, sao chép, phân phối, nghiên cứu, thay đổi và cải thiện phần mềm, tất cả cả thuộc tính của bản quyền, phần cứng của họ 1.3 5 Tài liệu mở (học liệu mở)
Phong trào OpenCourseWare (OWC) bắt đầu vào năm 1999 khi đại học Tübingen ở Đức cho truyền bá trực tuyến những video của các giảng viên trong sáng kiến timms của trường Thuật ngữ học liệu mở (OpenCourseWare) được khai sinh bởi Viện Công Nghệ Massachusetts-MIT (Mỹ) vào năm 2002 đánh dấu hình thức dạy học mới bằng việc họ đưa tất cả nội dung giảng dạy của họ lên Web và cho phép người dùng Internet tại mọi nơi trên thế giới truy cập và sử dụng miễn phí MIT nêu lý do thành lập chương trình này là để “mở rộng học vấn trên thế giới bằng những kiến thức cung cấp trên mạng” OpenCourseWare có thể gọi tổng quát là những nguồn giáo dục mở có thể bao gồm bài báo, sách vở, phim ảnh giáo dục, nghiên cứu những vấn đề cụ thể, phần mềm, chương trình, khóa học… Ngày nay, trang web về học liệu mở của MIT đã có bài giảng, lịch học, danh mục tài liệu tham khảo, bài tập về nhà, bài thi, thí nghiệm của trên 1800 môn học Người dùng có thể truy cập vào Internet và sử dụng tài nguyên đó cho quá trình học tập, giảng dạy, nghiên cứu Học hỏi MIT, lấy tiêu chí
“Tri thức là của chung của nhân loại và tri thức cần được phải chia sẻ” rất nhiều trường trên đại học (trên 250 đại học) và viện nghiên cứu trên thế giới đã tham gia phong trào học liệu mở và lập lên Hiệp hội Học liệu mở (OpenCourseWare) vào năm
2008 để chia sẻ nội dung, công cụ cũng như phương thức triển khai Người học trên thế giới, người giảng dạy, nghiên cứu ở mọi nơi trên thế giới đều có cơ hội tiếp cận tri thức mới như nhau bằng cách truy cập vào trang web chính của hội http://course.study.cerbibo.com/
Việt Nam cũng có cơ hội tiếp cận chương trình của hiệp hội Học liệu mở từ khá sớm (năm 2005) Trong chuyến thăm chính thức Hoa Kỳ của thủ tướng Phan Văn Khải, phái đoàn Việt Nam đã được MIT giới thiệu về chương trình học liệu mở của họ Nhận thức được những ưu điểm của Học liệu mở, Việt Nam nhận thấy cần làm một điều gì đó để mang nguồn tài nguyên này về cho người dùng Việt Nhưng trên thực tế, nếu chỉ xét đến yếu tố dễ tiếp cận (chỉ cần có Internet) thì chúng ta gặp không ít khó khăn: về sự chênh lệch kiến thức giữa sinh viên Việt và sinh viên của MIT; giáo trình và các chương trình của MIT đều là ngôn ngữ tiếng anh nên sinh viên Việt gặp khó khăn vì khả năng tiếng Anh của sinh viên Việt chưa đủ tốt để có thể đọc hiểu hết được; khác nhau về phương thức dạy và học của sinh viên Việt với sinh viên của MIT; người dùng Việt không có nguồn giáo trình và tài liệu tham khảo như sinh viên của MIT Với mục đích xóa bỏ rào cản trên và tận dụng tối đa các nguồn học liệu mở sẵn có Tháng
Năm 2005, Học liệu mở Việt Nam ra đời với sự hợp tác của Bộ Giáo dục và Đào tạo, VASC và Quỹ Giáo dục Việt Nam Trong giai đoạn thử nghiệm (2006-2008), Quỹ Giáo dục Việt Nam cấp kinh phí thực hiện xây dựng nội dung cho các môn học, bao gồm bài giảng, bài tập, bài thi, giáo trình, bằng tiếng Anh có kèm chú thích tiếng Việt Đội ngũ xây dựng gồm hơn 30 chuyên gia người Việt và chuyên gia Hoa Kỳ cộng tác, tham khảo các học liệu mở sẵn có từ MIT, RICE Connexions, OER Commons để xây dựng nội dung mẫu Sau khi xây dựng xong, các chuyên gia Hoa Kỳ sẽ đánh giá và thẩm định nội dung để đưa lên Internet cho người Việt sử dụng.
12/12/2007, trang tin chính thức của Vietnam Open Code Web (VOCW) tại địa chỉ www.vocw.edu.vn đã chính thức bấm nút khai trương tại Đà Nẵng, Hà Nội và Thành phố Hồ Chí Minh Hiện nay, website VOCW đã có hơn 200 khóa học và hơn 1000 mô-đun Chủ yếu là do cán bộ thuộc các trường chủ động đưa lên, phần còn lại có được thông qua các hoạt động tài trợ và chuyển đổi các kho giáo trình đã có Học viện Masachuset vừa công bố 1800 giáo trình trên website www.mit.edu Theo các hoạt động thường niên giữa VOCW và MIT, một đĩa cứng chứa toàn bộ số bài giảng này sẽ được chuyển tới người Việt Nam trên host máy chủ đặt tại Việt Nam.
Phần mềm nguồn mở và ứng dụng của nó trong một số xu hướng công nghệ hiện nay
1.4.1.1 Big Data a Lịch sử phát triển và khái niệm Big Data
Dữ liệu lớn (Big Data) thường bao gồm tập hợp dữ liệu với kích thước vượt xa khả năng của các công cụ phần mềm thông thường để thu thập, hiển thị, quản lý và xử lý dữ liệu trong một thời gian có thể chấp nhận được Kích thước dữ liệu lớn là một mục tiêu liên tục thay đổi Thuật ngữ dữ liệu lớn được sử dụng lần đầu tiên để chỉ số lượng dữ liệu gia tăng vào những năm 1990 Trong báo cáo nghiên cứu năm 2001 và những diễn giả liên quan, META Group nhà phân tích Doug Laney định nghĩa những thách thức và cơ hội tăng dữ liệu như là 3 chiều, tăng giá trị dữ liệu, tốc độ vào ra của dữ liệu, và khổ giới hạn của kiểu dữ liệu Khái niệm đó tiếp tục được sử dụng sau khi Gartner mua META Group và thuê Laney vào năm 2005 Gartner và nhiều ngành công nghiệp tiếp tục sử dụng mô hình “3Vs” để mô tả dữ liệu lớn Trong năm 2012, Gartner đã cập nhật định nghĩa như sau: “Dữ liệu lớn là khối lượng lớn, tốc độ cao và/hoặc loại hình thông tin rất đa dạng mà yêu cầu phương thức xử lý mới để cho phép tăng cường ra quyết định, khám phá bên trong và xử lý tối ưu”
Hình 1.3.Các thành phần trong mô hình “3Vs” của Big Data
3 yếu tố trong mô hình “Vs” - đặc trưng của Big Data:
Khối lượng dữ liệu (Data Volume) là nền tảng của Big Data, không có mô hình mẫu, chỉ thuật hiện và theo dõi những gì diễn ra Kích thước dữ liệu xác định giá trị tiềm năng của nó trong việc phân tích sâu hơn, đồng thời quyết định liệu dữ liệu đó có thực sự được coi là Big Data hay không Ngày nay, chúng ta chứng kiến sự tăng trưởng theo cấp số nhân trong lưu trữ dữ liệu Dữ liệu đa dạng có thể ở dạng video, hình ảnh, nhạc trên các nền tảng truyền thông xã hội Các loại dữ liệu được lưu trữ phổ biến ở đơn vị Terabyte và Petabyte của các hệ thống lưu trữ doanh nghiệp Khi cơ sở dữ liệu được phát triển dựa trên ứng dụng và kiến trúc nhằm hỗ trợ dữ liệu thì cần được đánh giá thường xuyên Đôi khi, cùng một dữ liệu được đánh giá trên nhiều góc độ khác nhau, do đó trí tuệ thu được đã tạo ra sự bùng nổ dữ liệu Khối lượng lớn thực sự đại diện cho Big Data.
- Data Velocity (tốc độ dữ liệu): tốc độ dữ liệu lớn thường được xử lý thời gian thực Trong trường hợp này nghĩa là tốc độ dữ liệu được tạo ra và xử lý để đáp ứng nhu cầu và thách thức trên con đường tăng trưởng và phát triển Sự bùng nổ của mạng Internet và sự phát triển của các phương tiện truyền thông, mạng xã hội đã làm thay đổi cách chúng ta nhìn vào dữ liệu Các kênh tin tức và radio đã thay đổi tốc độ mà
21 chúng ta nhận tin, tiếp nhận tin tức mỗi ngày Ngày nay, mọi người trả lời trên phương tiện truyền thông xã hội để cập nhật những tin tức mới nhất Trên phương tiện truyền thông xã hội đôi khi một vài tin nhắn cũ không hấp dẫn người dùng nữa, họ thường bỏ qua các tin nhắn cũ và chú ý đến các tin nhắn vừa mới cập nhật gần nhất Các phong trào dữ liệu bây giờ phải đáp ứng nhu cầu về thời gian thực và cửa sổ cập nhật đáp ứng đến độ phân chia rất nhỏ của giây Dữ liệu tốc độ cao này đại diện cho Big Data
- Data Variety (đa dạng dữ liệu): dữ liệu lớn đa dạng thể hiện ở việc ta có thể thu thập từ văn bản, hình ảnh, âm thanh, video… cộng với nó hoàn thành các phần dữ liệu còn thiếu thông qua tổng hợp dữ liệu Chất lượng của dữ liệu thu được có thể khác nhau rất nhiều, ảnh hưởng đến sự phân tích chính xác Trong thực tế, khi thu thập dữ liệu ta có thể thu được dữ liệu ở dưới nhiều định dạng khác nhau Đó là nhu cầu của tổ chức sắp xếp nó và làm cho nó có nghĩa Sẽ dễ dàng hơn rất nhiều nếu như tất cả dữ liệu chúng ta thu thập được ở cùng một định dạng (same format), tuy nhiên để đạt được điều đó sẽ cần một khoảng thời gian không nhỏ để có những phương pháp thích hợp Thế giới thực có nhiều loại dữ liệu ở nhiều định dạng khác nhau và đó là thách thức mà chúng ta cần vượt qua với Big Data Sự đa dạng của dữ liệu đại diện cho Big Data
- Data Veracity (tính xác thực dữ liệu): được thêm vào bởi một vài tổ chức để mô tả chi tiết hơn về Big Data Chất lượng của dữ liệu thu được có thể khác nhau rất nhiều ảnh hưởng đến sự phân tích chính xác b Dữ liệu lớn được lấy từ đâu?
Có một vài nguồn dữ liệu mà người ta đánh giá đó là những nguồn chính tạo ra dữ liệu lớn, bao gồm:
Hộp đen dữ liệu, bao gồm thông tin thu về từ giọng nói phi hành đoàn, bản ghi âm và thông số chuyến bay, đóng vai trò ghi lại toàn bộ thông tin của máy bay phản lực và trực thăng trong quá trình hoạt động.
Dữ liệu từ các kênh truyền thông xã hội là dữ liệu được tạo ra và phát triển trên các trang web như Twitter, Facebook, Instagram và G+.
- Dữ liệu giao dịch chứng khoán:
22 Đây là loại số liệu từ thị trường chứng khoán đối với quyết định mua và bán cổ phiếu thực hiện bởi khách hàng
- Dữ liệu điện lực: Đây là loại dữ liệu tạo ra bởi điện lực Nó bao gồm các thông tin cụ thể từ các điểm giao nhau của các nút thông tin sử dụng
Dữ liệu này bao gồm sức chứa và các mẫu phương tiện giao thông, độ sẵn sàng và khoảng cách đã đi được của từng phương tiện giao thông
Dữ liệu thiết bị tìm kiếm, chẳng hạn như Google Search Console, cung cấp thông tin chi tiết đáng giá về lưu lượng truy cập trang web, hành vi tìm kiếm và từ khóa Bằng cách phân tích dữ liệu khổng lồ này, các nhà tiếp thị có thể hiểu rõ hơn về đối tượng mục tiêu, tối ưu hóa chiến lược SEO và cải thiện hiệu suất tổng thể của trang web.
- Phân tích dữ liệu lớn:
Big data được xử lý thông qua 4 giai đoạn: thu thập (acquire), tổ chức (organize), phân tích (analyze), quyết định (decide)
▪ Đến nay, giai đoạn thu thập hầu hết đã có giải pháp Đơn cử, Oracle đưa ra NoSQL Database, Google có Google BigTable…
▪ Giai đoạn tổ chức: có thể lưu trữ dữ liệu ở dạng phân tán, song song… nhưng phổ biến nhất vẫn là Hadoop/MapReduce
▪ Giai đoạn phân tích: với các dữ liệu truyền thống, các công ty lớn đều đã có giải pháp Đơn cử, Oracle có Oracle Data warehousing, IBM có InfoSphere warehouse…
▪ Giai đoạn quyết định: dựa vào các thông tin được phân tích sẽ đưa ra các quyết định giải pháp kinh doanh kịp thời
Một trong những phương pháp nổi tiếng nhất để chuyển dữ liệu thô thành thông tin hữu ích được gọi là MapReduce MapReduce là một phương pháp để lấy một bộ dữ liệu lớn và thực hiện tính toán trên nó trên nhiều máy tính song song Nó phục vụ như là một mô hình để làm thế nào để chương trình, và thường được dùng để chỉ việc thực hiện thực tế của mô hình này Về bản chất MapReduce gồm 2 phần Chức năng Map- bản đồ, không phân loại và lọc, lấy dữ liệu và đặt nó trong các danh mục để nó có thể được phân tích Chức năng Reduce cung cấp một bản tóm tắt các dữ liệu này bằng
23 cách kết hợp tất cả Trong khi phần lớn được ghi nhận cho nghiên cứu đã diễn ra tại Google, MapReduce hiện nay là một thuật ngữ chung và đề cập đến một mô hình chung được sử dụng bởi nhiều công nghệ
- Công nghệ và công cụ:
Không có cấu trúc và bán cấu trúc kiểu dữ liệu thường không phù hợp với kho dữ liệu truyền thống dựa trên cơ sở dữ liệu quan hệ hướng tới tập hợp dữ liệu có cấu trúc Hơn nữa kho dữ liệu có thể không đáp ứng nhu cầu xử lý được đặt ra bởi bộ dữ liệu lớn cần được cập nhật thường xuyên hoặc thậm chí liên tục, như trong trường hợp dữ liệu thời gian thực về kinh doanh chứng khoán, các hoạt động trực tuyến của khách truy cập trang web hoặc hiệu suất của các ứng dụng di động Kết quả là nhiều tổ chức thu thập, xử lý và phân tích dữ liệu lớn đã chuyển sang Hadoop và các công cụ đồng hành cũng nó như YARN, MapReduce, Spark, Hbase, Hive, Kafka và Pig cũng như các cơ sở dữ liệu NoSQL Trong một số trường hợp, các cụm Hadoop và các hệ thống NoSQL đang được sử dụng chủ yếu như các điểm đích và các vùng dành cho dữ liệu trước khi nó được nạp vào kho dữ liệu hoặc cơ sở dữ liệu phân tích để phân tích, thường ở dạng tóm tắt có tính thuận lợi hơn cho các cấu trúc quan hệ
Công cụ có ảnh hưởng nhất được thành lập để phân tích dữ liệu lớn là Apache Hadoop Được giới thiệu vào năm 2006 như một dự án mã nguồn mở Apache, Hadoop là nền tảng phân tán nhằm hướng tới ứng dụng dữ liệu lớn trên phần cứng hàng hóa Hadoop có bốn thành phần chính:
- Hệ thống tệp phân phối Hadoop (HDFS), là một hệ thống tệp phân phối được thiết kế cho băng thông tổng hợp rất cao;
- YARN, một nền tảng để quản lý các nguồn lực của Hadoop và các chương trình lập kế hoạch sẽ chạy trên cơ sở hạ tầng Hadoop;
- MapReduce, như mô tả ở trên, một mô hình để xử lý dữ liệu lớn;
THỰC TRẠNG SỬ DỤNG PHẦN MỀM MÃ NGUỒN MỞ VÀ CÁC VẤN ĐỀ PHÁP LÝ ĐỐI VỚI PHẦN MỀM NGUỒN MỞ
Thực trạng sử dụng phần mềm nguồn mở
2.1.1 Thực trạng sử dụng phần mềm nguồn mở trên Thế Giới
Theo báo cáo tình hình quốc tề về phần mềm nguồn mở năm 2010:
Phạm vi ứng dụng và phát triển phần mềm nguồn mở (Open Source Software- OSS) là khác nhau giữa các vùng trên thế giới, và sự biến đổi này là tương quan với mức độ phát triển của xã hội thông tin
- Bắc Mỹ, Tây Âu, Úc là các nước có nền kinh tế phát triển mạnh, các nước này phát triển cao về xã hội thông tin và cũng dẫn đầu trong phát triển và ứng dụng phần mềm nguồn mở
- Châu Phi, Mỹ Latin và Đông Âu nằm trong nhóm nước có chỉ số phát triển OSS thấp và mức độ phát triển xã hội thông tin cũng thấp
- Ấn Độ, Trung Quốc, Brazil có mức phát triển và ứng dụng phần mềm nguồn mở cao hơn mức độ phát triển xã hội thông tin của họ
- Tại Bắc Mỹ, Mỹ nổi lên như là xã hội thông tin hàng đầu thế giới, trong cả các khu vực nhà nước và tư nhân Bởi hệ thống các công ty phần mềm lớn đa quốc gia, các công ty phần mềm mới nổi và các công ty phân phối OSS nổi tiếng thế giới bao gồm: IBM, Microsoft, Sun Microsystem, Oracle, Google, Yahoo, Red Hat, Novell, … Ngoài ra còn phải kể đến đóng góp từ phía các trường đại học trong sự phát triển của OSS
- Đức, Pháp, Tây Ban Nha dẫn dắt châu Âu trong việc sử dụng OSS Nhờ các chính sách hỗ trợ từ phía chính phủ: Chính phủ Đức đã tung ra chính sách thúc đẩy và hỗ trợ OSS; chính phủ Pháp tập trung vào sự thúc đẩy triển khai OS trong nền hành chính và các công ty nhà nước; còn ở Tây Ban Nha các chính sách thúc đẩy OSS chủ yếu là trách nhiệm của các cộng đồng tự trị
- Mặc dù Bắc Âu, Anh, Hà Lan là các quốc gia xã hội thông tin tiên tiến hơn Đức, Pháp, Tây Ban Nha nhưng chỉ đạt một mức độ phát triển OSS thấp hơn Lý do chính là do sự thiếu hụt hỗ trợ được đưa ra đối với OSS trong giai đoạn đầu của các chính phủ tương ứng
- Trong khu vực Thái Bình Dương, với 4 yếu tố: các trường đại học, chính phủ, doanh nghiệp tư nhân và cộng đồng đã đưa Úc trở thành quốc gia có mức sử dụng OSS cao nhất thế giới Với chính sách hỗ trợ của chính phủ khuyến khích sử dụng
Úc là quốc gia có mức độ sử dụng phần mềm nguồn mở (OSS) cao nhất thế giới, nhờ vào đội ngũ lập trình viên OSS tích cực tham gia các dự án quốc tế Các trường đại học cũng đóng góp đáng kể trong việc đào tạo nguồn nhân lực công nghệ thông tin chất lượng cao, trở thành nguồn lực chính cho các dự án OSS Các doanh nghiệp Úc đầu tư đáng kể vào các dự án OSS, dẫn đến sự ra đời của nhiều công ty OSS mạnh mẽ trong lĩnh vực ICT, đóng vai trò là trung tâm năng lực về OSS của quốc gia.
- Tại châu Á, mặc dù khác nhau về mức độ tiên tiến về xã hội thông tin, có 4 quốc gia dẫn đầu thế giới trong OSS, đó là Ấn Độ, Trung Quốc, Nhật và Hàn Mặc dù có mức độ xã hội thông tin thấp, nhưng Ấn Độ cũng đạt được một mức độ OSS đáng kể nhờ mức độ giáo dục dân số của họ và mức độ tham gia vào việc lập trình cho các công ty Mỹ và Châu Âu Sự phát triển của Trung Quốc thì gắn chặt với sự phát triển của chính phủ, điển hình là Red Flag Linux là một công ty cổ phần sở hữu nhà nước Tất cả Trung Quốc, Nhật và Hàn Quốc có các ngôn ngữ mà chúng đặt ra một rào cản quan trọng cho tầm nhìn về các cộng đồng của họ ở nước ngoài, cô lập họ khỏi phần còn lại của thế giới Để vượt qua sự cô lập này, cả 3 quốc gia đã thành lập một liên minh để phát triển một phiên bản Linux cho thị trường châu Á- Asianux, với kết quả là các dự án OSS được tập trung xung quanh Linux
- Chính phủ Brazil đã thúc đẩy sự phát triển OSS trong tất cả các lĩnh vực So với các quốc gia trong khu vực, bất chấp thực tế là mức độ xã hội thông tin của họ thấp, Brazil nổi lên nhờ vào mức độ rộng lớn về các lĩnh vực mà nước này triển khai OSS
- Châu Phi đạt mức độ phát triển OSS thấp nhất so với toàn thế giới, các nước châu Âu thấp về sự phát triển xã hội thông tin, thiếu cả những phương tiện tối thiểu cho việc phát triển OSS
Trong bài phát biểu đánh dấu 10 năm phát triển của phần mềm nguồn mở, mang tên
“2016- The Future of Open Source”:
- Năm 2008, không một ngành công nghiệp phần mềm nào không bị tấn công bởi nguồn mở
- Năm 2011, năm đầu tiên đánh dấu thời điểm mà chi phí phần mềm thấp đã không còn là điểm hấp dẫn duy nhất của phần mềm nguồn mở
- Năm 2013, phần mềm bao phủ toàn thế giới thì phần mềm nguồn mở bao trùm lên tất các các phần mềm
- Năm 2014, nguồn mở chạm đến những người mới, những công nghệ mới, nền kinh tế mới
- Đánh giá mức độ cần thiết của phần mềm nguồn mở trong chiến lược phát triển OSS: hơn 65% tận dụng OSS để tăng tốc độ phát triển ứng dụng, hơn 55% tận dụng OSS cho cơ sở hạ tầng sản xuất
- Đánh giá tốc độ phát triển tiếp theo của phần mềm nguổn mở: năm 2016 có 65% công ty tham gia tăng 5% so với năm 2015
- Nguồn mở là cốt lõi, các công ty đang sử dụng trên các lĩnh vực: hệ điều hành, Database, công cụ phát triển
- Các công nghệ phát triển hàng đầu: năm 2015 là điện toán đám mây, big data, OS; năm 2016 là OS, Database, công cụ phát triển/chu trình phát triển phần mềm
- Phần mềm mã nguồn mở được đặt trong nhiều thách thức với nhiều chiến lược: (thứ tự ưu tiên giảm dần từ trên xuống dựa theo bảng sau)
Truy cập tới mã nguồn Tính cạnh tranh
Khả năng tùy chỉnh và sửa chữa Tự do từ nhà cung cấp khóa
Tự do từ nhà cung cấp khóa Chất lượng của các giải pháp
Khả năng tùy chỉnh và sửa chữa
Bảng 2.1 Đánh giá thứ tự ưu tiên của trong các yếu tố cơ bản của phần mềm nguồn mở năm 2015 vs 2016
- Năm 2016, 65% các công ty đang đóng góp cho các dự án OSS Tăng 2% so với năm 2015
- 67% các công ty nhìn thấy giá trị trong nguồn mở: tích cực khuyến khích các nhà phát triển tham gia và đóng góp cho dự án mã nguồn mở
- Cứ 3 công ty thì có 1 công ty dành toàn thời gian cho các dự án mã nguồn mở
- 67% người dùng tham gia vào mã nguồn mở để sửa lỗi hoặc bổ sung chức năng cho một dự án 59% người dùng tham gia vào nguồn mở với mục đích cạnh tranh
- Các giá trị ưu tiên trong sử dụng phần mềm nguồn mở thay đổi:
Giảm chi phí phát triển Sửa lỗi hoặc thêm chức năng
Lợi thế cạnh tranh Tăng lợi thế cạnh tranh
Phù hợp với giá trị và nhiệm vụ của công ty Giảm chi phí phát triển
Bảng 2.2 So sánh các giá trị ưu tiên trong sử dụng phần mềm nguồn mở năm 2015 và 2016
- Hơn 34% các công ty có hơn 50% lập trình viên của họ tham gia vào nhiều hơn một dự án nguồn mở
- Gần 50% các công ty không có chính sách chính thức để lựa chọn và chấp thuận mã nguồn mở Gần 50% các công ty có chính sách hoặc không bắt buộc hoặc họ có thể được thông qua
- 90% số người được hỏi về sự minh bạch của phần mềm nguồn mở trong doanh nghiệp thừa nhận tính hiệu quả, đổi mới và khả năng tương tác của phần mềm nguồn mở
Nhận dạng các vấn đề pháp lý liên quan đến phần mềm nguồn mở
2.2.1 Các chủ thể có liên quan
2.2.2.1 Nhà cung cấp- người cấp phép
Phần mềm nguồn mở là phần mềm như bất kỳ phần mềm nào khác Nhưng, khác biệt ở điểm phần mềm nguồn mở được xác định bằng giấy phép hoặc các điều khoản sử dụng nó Giấy phép mã nguồn mở do một số công ty, tổ chức lập ra để quy định về trách nhiệm của người sử dụng đối với một phần mềm/mã nguồn mở Hiện tại, công ty (tổ chức) OSI (Open Source Initiative) là người đưa ra định nghĩa về mã nguồn mở (OSD – Open Source Definition) được cộng đồng công nhận rộng rãi Các giấy phép mã nguồn mở đa phần được xây dựng dựa trên OSD Nếu phần mềm nguồn đóng- phần mềm sở hữu độc quyền được ban hành bởi các điều khoản để được mua thì phần mềm nguồn mở lại xây dựng giấy phép của nó dựa trên các điều khoản sử dụng Đối với phần mềm sở hữu, thì người tạo ra phần mềm có thể là cá nhân hay tổ chức được xác định quyền sở hữu đối với phần mềm đó Thì phần mềm nguồn mở đảm bảo những quyền tự do nhất định, đối nghịch với phần mềm nguồn đóng sở hữu độc quyền Nhà cung cấp - người cấp phép phần mềm nguồn mở là người tạo tạo ra phần mềm và thiết đặt giấy phép cho phép người dùng sử dụng phần mềm đó dựa theo các tiêu chí của một phần mềm mã nguồn mở, bao gồm quyền truy cập và sử đổi mã nguồn; để sử dụng; sử dụng lại và phân phối lại phần mềm, tất cả đều không có chi phí bản quyền hoặc có bất kỳ chi phí nào Có một loạt mô hình giấy phép cho nguồn mở, trong đó quy định rõ các điều khoản sử dụng, điều khoản sử đổi mã nguồn
Có một vài mô hình phổ biến được sử dụng rộng rãi, như:
- GPL phiên bản 3, và phiên bản 2 vẫn còn được sử dụng khá nhiều
- Giấy phép công công chung GNU (sử dụng ở mức độ ít hơn GPL một chút)
- Giấy phéo công cộng Mozilla (MPL)
Những nhà phát triển phần mềm nguồn mở cần dựa theo hai yếu tố được chính phủ quy định khi sáng tạo, hay phát triển phần mềm dựa trên đam mê:
Thứ nhất, tiêu chuẩn mở:
Trong phiên bản chính sách về phần mềm nguồn mở và tiêu chuẩn mở được công bố vào năm 2004, nội dung đã được sửa đổi và cập nhật lại vào năm 2009 Nội dung này khẳng định cam kết tiếp tục của Microsoft trong việc phát triển và hỗ trợ phần mềm nguồn mở và các tiêu chuẩn mở.
Sử dụng lại: Kế hoạch Hành động của Chính Phủ” đã xác định “các tiêu chuẩn mở” là các chuẩn mà:
- Là kết quả từ và được duy trì thông qua một quy trình mở, độc lập
- Được phê chuẩn của một tổ chức tiêu chuẩn hóa hoặc đặc tả được thừa nhận, ví dụ như W3C hoặc ISO hoặc tương đương
- Được ghi thành tài liệu một cách hoàn hảo và sẵn sàng công khai ở chi phí bằng
- Có quyền sở hữu trí tuệ được làm sẵn sàng không thể hủy bỏ trên cơ sở tự do về phí bản quyền, và
- Như một tổng thể có thể được triển khai và chia sẻ theo cách tiếp cận khác nhau và trên một số lượng các nền tảng
Theo chính sách này, Chính phủ sẽ sử dụng các tiêu chuẩn mở trong yêu cầu mua sắm, đồng thời yêu cầu các nhà cung cấp phần mềm nguồn mở phải đưa ra các giải pháp tuân thủ các tiêu chuẩn đó Điều này đảm bảo lợi nhuận đầu tư tối đa và tránh tình trạng bị phụ thuộc vào một công nghệ hoặc nhà cung cấp cụ thể, giảm thiểu rủi ro trong hoạt động các dự án công nghệ thông tin Nhờ đó, các dịch vụ được cung cấp sẽ đáp ứng tốt nhu cầu của người dân, các cơ quan, tổ chức và doanh nghiệp.
Thứ hai, chính sách nguồn mở:
Năm 2009 chính sách nguồn mở được tuyên bố lại về phần mềm nguồn mở để đảm bảo tối đa giá trị về tiền cho người đóng thuế Chính sách nguồn mở ra đời đã phần nào phản ánh rõ sự thay đồi thị trường nguồn mở và thay đổi xu hướng tiếp
Chính phủ ban hành chính sách CNTT với mục đích thiết lập sân chơi bình đẳng cho phần mềm nguồn mở, khuyến khích sử dụng các tiêu chuẩn mở và tái sử dụng các phần mềm đã mua Chính sách này bao gồm các điểm chính sau:
- Chính phủ sẽ tích cực và công bằng cân nhắc các giải pháp nguồn mở cùng với giải pháp sở hữu độc quyền trong việc đưa ra quyết định mua sắm
- Các quyết định mua sắm sẽ được đưa ra trên cơ sở giải pháp tốt nhất về tiền đối với yêu cầu nghiệp vụ, tính tới tổng chi phí sở hữu vòng đời của giải pháp, bao gồm cả các chi phí thoát ra và chuyển tiếp, sau khi đảm bảo rằng các giải pháp làm thỏa mãn được tối thiểu và cơ bản các yêu cầu về khả năng, an ninh, tính mở rộng về phạm vi, tính có thể chuyển giao, sợ hỗ trợ và tính có thể quản lý được
- Chính phủ sẽ mong đợi những thứ này đặt ra trước các giải pháp công nghệ thông tin để phát triển ở bất kỳ nơi nào cần thiết một sự pha trộn phù hợp với các sản phầm nguồn mở và sở hữu độc quyền để đảm bảo rằng giải pháp tổng thể có khả năng có thể được cân nhắc
- Ở những nơi mà không có sự khác biệt về chi phí tổng thể đáng kể giữa các sản phẩm nguồn mở và nguồn không mở, thì nguồn mở sẽ được chọn trên cơ sở tính mềm dẻo vốn có bổ sung của nó Tuy là phần mềm nguồn mở, được dùng miễn phí nhưng nhà cung cấp phần mềm nguồn mở có quyền yêu cầu người dùng trả một khoản chi phí về các dịch vụ bảo hành, huấn luyện, nâng cấp, tư vấn… nhưng không được bán các sản phẩn nguồn mở vì nó là tài sản trí tuệ chung, không là sản phẩn riêng của bất cứ nhà cung cấp hay cá nhân nào
Tiêu chuẩn mở, giấy phép nguồn mở, chính sách nguồn mở là những giàng buộc được đưa ra nhằm tận dụng tối đa những lợi ích của nguồn mở
2.2.2.2 Người sử dụng- người được cấp phép
Bao gồm các công ty hoặc cá nhân có phần mềm để sử dụng với tư cách cá nhân hoặc nội bộ công ty Người sử dụng phần mềm được đưa ra và phải đảm bảo tuân thủ các giấy phép và các điều khoản sử dụng nó Người dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo những nguyên tắc được quy định trong giấy phép hoặc các điều khoản của phần mềm mà không cần xin phép bất cứ ai Người dùng được cấp phép để sử dụng phần mềm đó, tùy thuộc vào giấy phép mà phần mềm quy định để sử dụng linh hoạt, hợp lý Đóng góp vào sự phát triển chung của phần mềm nguồn mở
Tất nhiên, việc sử dụng phần mềm nguồn mở là miễn phí, nhưng tùy thuộc vào nhà cung cấp mà người dùng có thể sẽ phải trả một khoản phí nhỏ cho các dịch vụ phục vụ người dùng như: việc bảo hành, huấn luyện, nâng cấp, tư vấn… người sử dụng được cấp phép sử dụng phần mềm và có quyền can thiệp tới mã nguồn có thể sử dụng nó để phát triển phần mềm dựa trên mã nguồn đó, sản phẩm phần mềm của họ sau khi được tạo ra lại được đưa ra thị trường công khai cho mọi người góp ý và sử dụng dưới các điều khoản và giấy phép mà người đó và người tạo ra phần mềm gốc mà người đó phát triển dựa trên quy định
Trong phần mềm nguồn mở, vai trò cung cấp và sử dụng có thể hoán đổi cho nhau Người dùng được cấp phép có thể sửa đổi sản phẩm và chia sẻ với cộng đồng dưới dạng người cung cấp cấp phép mới Điều này xóa bỏ ranh giới giữa người cấp phép và người được cấp phép, khuyến khích sự cộng tác, cải tiến và tiếp tục phát triển phần mềm nguồn mở.
2.2.2 Giấy phép phần mềm nguồn mở
2.2.2.1 Khái niệm và các loại giấy phép phần mềm mã nguồn mở a Khái niệm giấy phép (Licences)
Giấy phép mã nguồn mở xác nhận về bản quyền của tác giả gốc đối với phần mềm, tuy nhiên được đưa thêm các điều khoản để các hành vi phân phối, sửa đổi, sao chép…các phần mềm trở thành hợp pháp
Giấy phép mã nguồn mở do một số công ty, tổ chức lập ra để quy định về trách nhiệm của người sử dụng đối với một phần mềm/mã nguồn mở, dựa trên định nghĩa về mã nguồn mở do OSI (Open Source Initiative) đưa ra
Có 2 loại giấy phép mã nguồn mở như sau:
ĐỀ XUẤT MỘT SỐ GIẢI PHÁP PHÁP LÝ CHO VIỆC SỬ DỤNG PHẦN MỀM MÃ NGUỒN MỞ Ở VIỆT NAM
Đề xuất một số giải pháp pháp lý về vấn đề bản quyền phần mềm nguồn mở
Tại Việt Nam, pháp luật Việt Nam đã có quy định về bảo vệ quyền sở hữu trí tuệ, bảo vệ quyền tác giả đối với các phần mềm nhưng không phải là phần mềm nguồn mở Phần lớn tác phẩm nguồn mở được sáng tạo ra không được bảo vệ quyền tác giả, chưa có quy định nào quy định về cách giải quyết tranh chấp của tác giả và người sử dụng phần mềm nguồn mở Do đó, người phát triển phần mềm nguồn mở này sinh tâm lý “ngại” đưa sản phẩm của mình ra với cộng động bởi vì có đưa ra thì họ cũng không được bảo vệ Đối với người dùng, bởi vì chưa có luật điều chỉnh nên mọi người không sử dụng hoặc luôn cẩn trọng trong việc sử dụng phần mềm nguồn mở, một số người dùng còn nhầm lẫn phần mềm nguồn mở là miễn phí do đó ảnh hưởng đến quyền lợi của tác giả Với những lợi ích của phần mềm nguồn mở trong thời đại khoa học công nghệ phát triển nhanh như vậy, phần mềm nguồn mở cần được tạo điều kiện để phát triển Trên cơ sở đó, tác giả đề nghị cần có một khung pháp lý tham chiếu cho vấn đề phần mềm nguồn mở tại Việt Nam
Khung pháp lý tham chiếu của vấn đề phần mềm nguồn mở, theo tác giả, cần bao gồm các vấn đề sau đây:
- Các quy định về vấn đề bản quyền (thường nằm trong đạo luật về sở hữu trí tuệ):
▪ Các vấn đề về bản quyền quy định trong luật sở hữu trí tuệ: các vấn đề về quyền sở hữu, quyền tài sản và trách nhiệm liên quan đến việc sở hữu, tài sản là sản phầm mã nguồn mở
▪ Nền tảng của quyền sở hữu trí tuệ, cơ sở triết học của quyền sở hữu trí tuệ, việc bảo hộ quyền sở hữu trí tuệ trong sản phẩm mã nguồn mở, bảo vệ quyền sở hữu trí tuệ đối với các sản phẩm phần mềm mã nguồn mở
▪ Nội hàm các khái niệm về bản quyền khi áp dụng cho các sản phầm mã nguồn mở
▪ Hậu quả về mặt dân sự, hành chính, hình sự của hành vi vi phạm bản quyền phần mềm mã nguồn mở
- Các quy định về bằng sáng chế và thương hiệu (cũng nằm trong luật sở hữu trí tuệ):
▪ Các quy định và trách nhiệm pháp lý liên quan đến thương hiệu, bằng sáng chế của sản phẩm phần mềm nguồn mở
▪ Nền tảng của bằng sáng chế và thương hiệu trong sản phầm phần mềm nguồn mở
▪ Nội hàm các khái niệm về thương hiệu và bằng sáng chế trong sản phầm phần mềm mã nguồn mở
▪ Hậu quả về mặt hành chính, dân sự, hình sự của hành vi vi phạm thương hiệu, bằng sáng chế của sản phầm nguồn mở
- Các quy định về thương mại điện tử:
▪ Các quy định và trách nhiệm pháp lý của đối tượng sử dụng thương mại điện tử nguồn mở
▪ Hợp đồng điện tử, giá trị pháp lý của hợp đồng điện tử
▪ Nền tảng của thương mại điện tử trong sản phẩm phần mềm mã nguồn mở
▪ Nội hàm các khái niệm trong việc sử dụng thương mại điện tử dưới tác động của mã nguồn mở
▪ Hậu quả về mặt dân sự, hành chính, hình sự của hành vi vi phạm các quy định về thương mại điện tử trong môi trường mã nguồn mở
- Các quy định về bảo vệ sự riêng tư :
▪ Quyền bảo vệ sự riêng tư, quyền tự do thông tin trong sử dụng, sáng tạo phần mềm nguồn mở
▪ Các quy định và trách nhiệm pháp lý liên quan đến sự riêng tư trong sử dụng phần mềm mà nguồn mở.
Đề xuất một số giải pháp pháp lý về điều chỉnh vấn đề cấp các loại giấy phép liên quan đến phần mềm nguồn mở
Việc sử dụng giấy phép phần mềm nguồn mở vẫn mang tính tự do, chưa có quy định cụ thể về việc sử dụng giấy phép phần mềm nguồn mở, người dùng chưa phân biệt được các loại giấy phép nên dẫn đến việc sử dụng giấy phép phần mềm nguồn mở chưa hiệu quả, theo hơi hướng mạnh ai nấy dùng Để khắc phục tình trạng này, theo tác giả, cần điều chỉnh vấn đề cấp các loại giấy phép liên quan đến phần mềm nguồn mở như sau:
- Hệ thống pháp luật của Việt Nam cần phân biệt rõ các loại giấy phép Phần mềm mã nguồn mở
- Cần có quy định riêng cho từng loại giấy phép khi gắn với phần mềm nguồn mở
- Có các quy định về xử lý vi phạm giấy phép phần mềm nguồn mở
Khi xây dựng nội dung, các nhà làm luật có thể tham khảo kinh nghiệm quốc tế hoặc kinh nghiệm của một số quốc gia đã được trình bày trong Chương 2, Mục 2.2.2 "Thực trạng sử dụng phần mềm mã nguồn mở và các vấn đề pháp lý đối với phần mềm nguồn mở" cũng như các loại giấy phép phần mềm nguồn mở được giới thiệu trong tài liệu này.
Đề xuất nâng cao năng lực cho nhân lực giải quyết các tranh chấp về bản quyền nguồn mở (thẩm phán, điều tra viên, chuyên gia pháp lý)
Phần mềm nguồn mở đang ngày càng được sử dụng rộng rãi, kéo theo sự gia tăng của các tranh chấp bản quyền Để giải quyết vấn đề này một cách công bằng, Pháp luật Việt Nam cần nâng cao năng lực giải quyết các tranh chấp về bản quyền phần mềm nguồn mở Đặc biệt, thẩm phán cần được đào tạo bài bản về bản chất và đặc điểm của phần mềm nguồn mở, cũng như các công ước quốc tế và thực tiễn tốt nhất trong xử lý tranh chấp bản quyền.
- Nắm bắt các kiến thức mới về ngành công nghệ thông tin nói chung và phần mềm mã nguồn mở nói riêng
- Có kiến thức tổng quan nhất về các kỹ thuật, kỹ năng và công cụ trong lĩnh vực công nghệ thông tin ứng dụng vào thực tế công việc
- Hiểu biết sâu sắc các quy định của pháp luật Việt Nam về vấn đề bản quyền phần mềm nguồn mở để giải quyết các vấn đề tranh chấp Đối với điều tra viên cần:
- Nắm bắt các kiến thức mới về ngành công nghệ thông tin nói chung và đặc biệt có kiến thức chuyên sâu về phần mềm mã nguồn mở nói riêng
- Có kiến thức tổng quan nhất về các kỹ thuật, kỹ năng và công cụ trong lĩnh vực công nghệ thông tin ứng dụng vào thực tế công việc
- Hiểu biết sâu sắc về phần mềm mã nguồn mở trong quá trình thực hiện các chức năng nhiệm vụ của điều tra viên: nhận dạng vi phạm; phỏng vấn các đối tượng liên quan; nghiên cứu xác định tội phạm; lập hồ sơ vụ án; … Đối với chuyên gia pháp lý khác:
- Nắm bắt và có kiến thức chuyên sâu về lĩnh vực công nghệ thông tin, đặc biệt là đối với phần mềm nguồn mở để có kiến thức liên ngành, liên lĩnh vực trong vấn đề này
- Có kiến thức về các kỹ thuật, công nghệ mới nhất trong lĩnh vực công nghệ thông tin.
Đề xuất chính sách ưu tiên giải pháp điện toán đám mây nguồn mở để phát triển chính phủ điện tử
Điện toán đám mây là một trong những xu thế công nghệ chủ đạo trên quy mô toàn cầu Ở Việt Nam, điện toán đám mây mở ra nhiều cơ hội cho các tổ chức, cơ quan, đặc biệt là trong lĩnh vực chính phủ điện tử bởi tiết kiệm được chi phí mà vẫn
82 nâng cao năng lực quản lý điều hành Tuy nhiên nhiều cơ quan, tổ chức vẫn còn lo ngại đến khả năng bảo mật cũng như chất lượng dịch vụ, việc tuân thủ quy định pháp lý, quyền lợi và trách nhiệm của nhà cung cấp dịch vụ cũng như của bản thân tổ chức sử dụng dịch vụ Đề xuất một số chính sách ưu tiên giải pháp điện toán đám mây nguồn mở để phát triển chính phủ điện tử:
- Làm rõ công nghệ điện toán đám mây: nội hàm khái niệm, nền tảng công nghệ
- Xây dựng khung pháp lý của đám mây, đặc biệt là các quy định về việc sử dụng cơ sở hạ tầng và ứng dụng
- Có các quy định về quyền lợi và trách nhiệm của các bên liên quan trong các hợp đồng cung cấp dịch vụ
- Nhà nước nên đầu tư hoặc cùng doanh nghiệp đầu tư xây dựng một hệ thống chính phủ điện tử trên đám mây nguồn mở để làm “mẫu” cho các cơ quan, tổ chức, doanh nghiệp khác lấy đó làm “bài học” để làm theo.