Bài giảng Phát triển phần mềm mã nguồn mở - Chương 1: Tổng quan hệ thống mã nguồn mở - Dương Thành Phết
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phát triển phần mềm mã nguồn mở - Chương 1: Tổng quan hệ thống mã nguồn mở - Dương Thành Phết", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_phat_trien_phan_mem_ma_nguon_mo_chuong_1_tong_quan.pdf
Nội dung text: Bài giảng Phát triển phần mềm mã nguồn mở - Chương 1: Tổng quan hệ thống mã nguồn mở - Dương Thành Phết
- TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ Chương 1: TỔNG QUAN HỆ THỐNG MÃ NGUỒN MỞ Thời gian: 3 tiết Giảng viên: ThS. Dương Thành Phết Email: phetcm@gmail.com Website: Tel: 0918158670 – facebook com/DuongThanhPhet 1
- NỘI DUNG 1.Khái niệm về phần mềm nguồn mở 2.Lợi ích của phần mềm nguồn mở 3.Nhược điểm của các hệ thống mã nguồn mở 4.Các loại giấy phép 5.Phân loại các nhóm phần mềm mã nguồn mở 2
- 1. KHÁI NIỆM VỀ PHẦN MỀM MÃ NGUỒN MỞ 1.1. Phần mềm mã nguồn mở là gì? Phần mềm nguồn mở (PMNM) là phần mềm được cung cấp quyền sử dụng với cả mã nguồn. Miễn phí về bản quyền sử dụng và quyền sửa đổi, cải tiến theo một số nguyên tắc chung quy định. PMNM không phải lúc nào cũng miễn phí: Không thu phí sử dụng phần mềm nhưng có thể thu phí các dịch vụ: bảo hành, huấn luyện, nâng cấp, tư vấn, Các công cụ hỗ trợ thêm có thể bị thu phí. 3
- 1. KHÁI NIỆM VỀ PHẦN MỀM MÃ NGUỒN MỞ 1.2. Quyền của người sử dụng PMMNM. Các nhà cung cấp PMNM có quyền không hỗ trợ hoặc phải mất một mức phí để được hỗ trợ. Người dùng có đầy đủ quyền truy cập vào mã nguồn. Tự do sử dụng chương trình cho mọi mục đích, để nghiên cứu, chỉnh sữa phù hợp với nhu cầu. Quyền tự do phân phối lại các phiên bản cho nhiều người, quyền tự do cải tiến chương trình và phát hành những bản cải tiến vì mục đích công cộng. 4
- 1. KHÁI NIỆM VỀ PHẦN MỀM MÃ NGUỒN MỞ 1.3. Lịch sử phát triển PM nguồn mở 1983: Xu hướng phần mềm miền phí “Free Software” 1995: Free Software Foundation đưa ra định nghĩa về phần mềm miễn phí. 1998: Tổ chức “Open Source Initiative” do Eric S. Raymond và Bruce Perens thành lập đã đổi thuật ngữ “phần mềm miễn phí” thành “phần mềm nguồn mở” . Miễn phí . Có source code . Có thể thay đổi, tinh chỉnh source code 5
- 2. LỢI ÍCH CỦA PHẦN MỀM NGUỒN MỞ Tính an toàn, bảo mật cao. Tính ổn định/đáng tin cậy. Các chuẩn mở và việc không lệ thuộc nhà cung cấp. Giảm phụ thuộc vào nhập khẩu - Nội địa hoá. Phát triển năng lực của ngành công nghiệp phần mềm địa phương Vấn đề vi phạm bản quyền, quyền sở hữu trí tuệ, và tính tuân thủ WTO. 6
- 3. NHƯỢC ĐIỂM CỦA HỆ THỐNG MÃ NGUỒN MỞ Nhiều lĩnh vực chưa có phần mềm hoàn thiện Không hoàn toàn tương thích với PM nguồn đóng Thiếu tính tiện dụng vốn là đặc trưng của phần mềm thương mại. Không có sự hỗ trợ một cách chính thức 7
- 4. CÁC LOẠI GIẤY PHÉP Phần mềm thương mại (Commercial Software): Là phần mềm thuộc bản quyền của tác giả hoặc nhà sản xuất, được cung cấp ở dạng mã nhị phân Người dùng mua và không có quyền phân phối lại. 8
- 4. CÁC LOẠI GIẤY PHÉP Phần mềm thử nghiệm giới hạn(Limited Trial Software): Là phiên bản giới hạn của phần mềm thương mại được cung cấp miễn phí nhằm mục đích thử nghiệm Giới thiệu và kích thích người dùng quyết định mua. Sản phấm này giới hạn về tính năng và thời gian dùng thử (thường là 60 ngày). 9
- 4. CÁC LOẠI GIẤY PHÉP Giấp phép đại chúng GNU (General Public License) Khi chương trình được cấp phép đại chúng phải phổ biến luôn cả mã nguồn cho người nhận. Nếu đã thực hiện sửa đổi cho phần mềm thì những sửa đổi đó cũng phải được cấp phép tgiấy phép đại chúng. Người phổ biến chương trình không áp dụng bất cứ hạn chế nào không thuộc phạm vi giấy phép đại chúng Người nhận phần mềm đã cấp phép đại chúng sẽ được trao quyền như người phổ biến gốc, tức là quyền sao chép, chỉnh sửa và phổ biến phần mềm 10
- 4. CÁC LOẠI GIẤY PHÉP Giấp phép BSD (Berkeley System Distribution) Ghi nhận công lao của tác giả đầu tiên làm ra phần mềm bằng cách đưa vào file mã nguồn các thông tin bản quyền gốc Người phát hành ban đầu không chịu trách nhiệm trước pháp luật về bất cứ thiệt hại nào phát sinh do sử dụng những phần mềm nguồn mở đã được chỉnh sửa. 11
- 4. CÁC LOẠI GIẤY PHÉP Giấp phép Giấp phép đại chúng BSD Phải phổ biến mã nguồn gốc Có Không Phải phổ biến mã nguồn người Có Không dùng tạo mới Mã nguồn tạo mới phải được cấp Có Không phép đại chúng 12
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Các PMNM có thể được phân loại theo chức năng: Hệ điều hành Cơ sở dữ liệu Ứng dụng trên Desktop Ứng dụng Server Ứng dụng Web 13
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ 5.1. Nhóm hệ điều hành . Linux . Unix . Android . 14
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ 5.2. Nhóm Cơ sở dữ liệu . MySQL . Cassandra . PostgreSQL . 15
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ 5.3. Nhóm ứng dụng Desktop . Open Office . Xara Xtreme . GZIP . Eclipse . 16
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ 5.4. Nhóm Server . Webserver: Apache; NGINX; Lighttpd . Mail Server: SENDMAIL; QMAIL; POSTFIX; EXIM . File Server: XtreemFS; HFS; Openfiler 17
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ 5.5. Nhóm ứng dụng Web trên nền PHP: 18
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về CMS/Portal 19
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về Forum 20
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về Blog 21
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Hệ thống chuyên về thương mại điện tử (eCommerce) 22
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về ERP 23
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về Giáo dục (Education) 24
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Loại hệ thống chuyên về Social Networking 25
- 5. PHÂN LOẠI PHẦN MỀM MÃ NGUỒN MỞ Các loại hệ thống Open Source Web trên nền .NET 26
- 6. PHẦN MỀM MIỄN PHÍ DẠNG DỊCH VỤ (SAAS) Bên cạnh phần mềm tự do và mã nguồn mở, xu hướng hiện nay cung cấp phần mềm dạng dịch vụ. Chuyển từ “mua” sang “thuê” phần mềm. Cung cấp miễn phí với tính năng tối thiểu, trả phí với tính năng mở rộng - Freemium Dùng bao nhiêu trả tiền bấy nhiêu. 27
- 6. PHẦN MỀM MIỄN PHÍ DẠNG DỊCH VỤ (SAAS) SaaS – Software as a Service Dữ liệu được lưu trữ trên “mây” (Internet) Truy cập phần mềm qua web browser 28
- 6. PHẦN MỀM MIỄN PHÍ DẠNG DỊCH VỤ (SAAS) Lợi ích Truy cập được từ bất cứ đâu, bất cứ thời điểm nào Chi phí rẻ hơn mua phần mềm dạng sản phẩm (không phải trả tiền cho tính năng không dùng) Không cài đặt, bảo trì, hệ thống hay máy chủ, Chỉ cần có thiết bị truy cập được và Internet. Không phụ thuộc nền tảng (platform) 29
- 6. PHẦN MỀM MIỄN PHÍ DẠNG DỊCH VỤ (SAAS) Nhược điểm: Kết nối Internet và tốc độ đường truyền. Khó tùy biến để đáp ứng nhu cầu đặc thù của doanh nghiệp. Rủi ro về bảo mật thông tin. Lệ thuộc vào nhà cung cấp dịch vụ. 30
- BÀI TẬP 1. Phần mềm mã nguồn mở là gì? 2. Trình bày ưu khuyết điểm của PMNM. 3. Trình bày các loại giấy phép. 4. Phân biệt phần mềm mã nguồn mở và phần mềm mã nguồn đóng 5. Phân biệt phần mềm mã nguồn mở và phần mềm miễn phí dạng dịch vụ 6. Giới thiệu 1 số phần mềm mã nguồn mở phổ biến. 31 31