1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập môn kinh tế công nghệ phần mềm

16 671 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 408 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tìm hiểu danh sách 3 công ty kinh doanh trên nền tảng điện toán đám mây ở Việt Nam và giới thiệu về công ty tốt nhất theo quan điểm của nhóm về khả năng phát triển dịch vụ của công ty nà

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÀI TẬP TUẦN 6

Môn: Kinh tế công nghệ phần mềm

Nhóm 3

Giảng viên hướng dẫn:

PGS Huỳnh Quyết Thắng

Hà Nội, tháng 5 năm 2014

Trang 2

Mục lục

1 Tìm hiểu về các đặc điểm trong phát triển các dự án phần mềm sử dụng PMNM và các giấy phép phần mềm 3

2 Làm rõ hơn những vấn đề trong kinh tế các dự án phần mềm nguồn mở: 5

3 Tìm hiểu các công nghệ cơ bản của điện toán đám mây hỗ trợ cho các mô hình dịch vụ: 6

4 Tìm hiểu danh sách 3 công ty kinh doanh trên nền tảng điện toán đám mây ở Việt Nam và giới thiệu về công ty tốt nhất theo quan điểm của nhóm về khả năng phát triển dịch vụ của công ty này 11

5 Tìm hiểu và trình bày một công ty điển hình kinh doanh trên nền tảng điện toán đám mây trên thế giới theo quan điểm của nhóm Nêu những bài học về khả năng phát triển của công ty này, sử dụng Điện toán đám mây để áp dụng tại Việt Nam 13

Trang 3

1 Tìm hiểu về các đặc điểm trong phát triển các dự

án phần mềm sử dụng PMNM và các giấy phép phần mềm

a) Các đặc điểm:

+ Mô hình phát triển:

- Người sử dụng phần mềm được coi như các nhà đồng phát triển: những người sử

dụng phần mềm nên tham gia vào quá trình sản xuất phần mềm Họ được khuyến khích phản hội lại các bổ sung chức năng, các vấn đề cần điều chỉnh để phần mềm trở nên hoàn thiện hơn, hoặc report các lỗi xuất hiện cho nhà phát triển thậm chi người sử dụng có thể viết tài liệu cho phần mềm Càng có nhiều nhà đồng phát triển thì phần mềm càng hoàn thiện và có giá trị cao Người sử dụng cũng đóng vai trò như một môi trường kiểm định chất lượng phần mềm.

- Phiên bản đầu tiên của phần mềm cần được công bố càng sớm càng tốt, để tạo cơ hội tìm thấy các nhà đồng phát triển.

- Tích hợp thường xuyên: thường xuyên cập nhật các thay đổi code của phần mềm để

tránh chi phí lớn phát sinh để sửa lỗi ở giai đoạn cuối cảu quá trình phát triển phẩn mềm.

- Các phiên bản phần mềm: nên có it nhất hai phiên bản cho mỗi phần mềm Một phiên

bản bao gồm nhiều chức năng để chạy thử nghiêm và một bản ổn định gồm ít chức năng Phiên bản chạy thử nghiệm dành cho những người muốn sử dụng các chức năng mới nhất của sản phẩm mà chưa qua kiểm thử.

- Tính model hóa cao: cấu trúc phần mềm nên được module hóa để tạo điều kiện cho các

nhà phát triển cùng lập trình song song.

- Ra quyết định năng động và linh hoạt: cần có cấu trúc ra quyết định khi có thay dổi

trong yêu cầu của khác hàng (lập trình tiêu cực).

+ Công cụ để phát triển phần mềm nguồn mở:

- Trong phát triển phần mềm nguồn mở các lập trình viên được xem như các tình nguyện viên đến từ các quốc gia khác nhau nên cần phải có công cụ cung cấp, hỗ trợ việc công tác giữa các lập trình viên Đa phần các công cụ này cũng là các phần mềm nguồn mở(PMNM).

- Các công cụ như : Revision control, Concurrent Versions System (CVS), Subversion (SVN), Git, GNU Compiler Collection giúp quản lý các file của dự án PMNM Ngoài ra còn có các công

cụ hỗ trợ việc test tự động, biên dich mã nguồn, báo cáo lỗi

+Đặc điểm trong sản xuất

Phần mềm nguồn mở được sản xuất theo giấy phép nguồn mở cho phép người dùng sử dụng phần mềm vào các mục đích khác nhau, có thể sữa chữa mã nguồn, phân phối phần mềm đã sữa mã nguồn hoặc chưa sữa.

Trang 4

- Có thể ước lượng giá thành một cách chi tiết, rủi ro thấp.

+ có thể nhận ra các yêu cầu nếu có nhu cầu + việc nhìn nhận các yêu cầu một cách ngang hàng giúp tăng chất lượng và bảo mật.

+ được hỗ trợ trong thời gian dài, minh bạch các khoản thu chi

- Có thể sao chép nhiều lần mà không mất thêm chi phí

+ có thể hộ trở chi phí cho mỗi lần sử dụng.

- Có thể chia sẽ chi phí phát triển với các người dùng khác.

- Có thể sữa chữa phần mềm phục vụ cho các nhu cầu đặc biệt ngay cả việc sử dụng trong việc tấn công truy cập.

+ Thậm chí việc sữa chữa chi phục cho mục đích của một người.

- Có thể kiểm soát được hành vi của các nhà phần phối phần mềm

b) Giấy phép

Hiện nay có rất nhiều giấy phép được các dự án phần mềm nguồn mở Tron đó GPL(General Public Licenese) là loại phổ biến nhất hiện nay, chiếm khoảng ¾ trong top 10 loại giấy phép được sử dụng.

Tóp 10 giấy phép được sử dụng phổ biến cho phần mềm nguồn mở

Trang 5

Licenese Percent

Public Domain 1.15%

2 Làm rõ hơn những vấn đề trong kinh tế các dự án phần mềm nguồn mở:

- Prospects: Triển vọng

 Phần mềm mã nguồn mở là cơ hội cho chúng ta nắm chủ công nghệ, phát huy vai trò tính sáng tạo và tính mở của hệ thống thông tin

 Phần mềm nguồn đóng có giá thành hầu như là cao hơn so với phần mềm nguồn mở, vì vật việc phát triển phần mềm mã nguồn mở tạo điều kiện cho Việt Nam tiếp cần mã nguồn mở, từ đó chúng ta có thể nắm được bản chất của cả hệ thống thông tin

- Pitfalls: Các cạm bẫy

Phát triển phần mềm mã nguồn mở cũng đi kèm với rất nhiều cạm bẩy đi kèm Phần mềm mã nguồn mở đồng thời là chia sẻ mã nguồn cho cộng đồng, nên rất

dễ bị đối thủ bắt chước và làm theo, phát triển hơn sản phầm của mình, nên giá thành sẻ rẻ hơn, dẫn đến sản phầm không còn có tính cạnh tranh nữa

Các vấn đề vể chính sách bảo mật bị tiết lộ nên dễ bị các hacker tấn công Làm tổn hại đến kinh tế, chất lượng sản phẩm

- Politics: Các chính sách

Để phần mềm mã nguồn mở mang lại lợi ích tối đa nhất cho cộng đồng thì cần

có các chính sách thích hợp và cụ thể nhất

Trang 6

Trước tiên nhà nước cần có sự quan tâm tới việc phát triển phần mềm mã nguồn mở

Có các chính sách hỗ trợ từ phía nhà nước và các tổ chức liên quan khác, tập trung đào tạo nguồn lực phục vụ kỹ thuật cho phần mềm mã nguồn mở, khuyến khích phát triển phần mềm nguồn mở từ cá nhân, tập thể Lập hội thảo phần mềm nguồn mở, tặng thưởng nếu có sự sáng tạo mang lại hữu ích cho cộng đồng

để khuến khích sáng tạo Tổ chức các cuộc thi sáng tạo phần mềm mã nguồn mở

3 Tìm hiểu các công nghệ cơ bản của điện toán đám mây hỗ trợ cho các mô hình dịch vụ:

- Virtualization

a) Ảo hóa (virtualization)

Định nghĩa: Ảo hóa là quá trình tạo ra phiên bản ảo (có thể hơn bản thật) của

nền tảng phần cứng, hoạt động hệ thống, thiết bị lưu trữ hay tài nguyên mạng máy tính

Ba lĩnh vực mà ảo hóa đang phát triển mạnh hiện nay là:

- Network virtualization

- Storage virtualization

- Server virtualization

Kiến trúc:

- Giả thiết rằng hệ điều hành(OS) sẽ điều khiển hoạt động của toàn bộ phần cứng cơ bản Kiến trúc ảo hóa sẽ cung cấp toàn bộ ảo hóa thông qua một Hypervisor hoặc VMM Trong đó Hypervisor/VMM là một tầng phần mềm:

+ cho phép nhiều hệ điều hành chạy song song cùng lúc trên cùng một máy chủ vật lý

+ cung cấp phần cứng abstraction để chạy nhiều hệ điều hành và sử dụng hiệu quả nhiều phần của phần cứng cơ bản

Trang 7

Mục đích của ảo hóa:

- Tính sẵn sàng cao, khả năng mở rộng nhanh

- Giảm thời gian bảo trì

- An toàn bảo mật tốt, khả năng cô lập lỗi cao

Trang 8

- Bảo vệ dữ liệu an toàn.

- Cho phép thực hiện sao lưu dự phòng tập trung các máy ảo mà không ảnh hưởng đến người dùng, ứng dụng

Tầm quan trọng của ảo hóa trong điện toán đám mây:

- Điện toán đám mây có thể tồn tại mà không cần có ảo hóa, nhưng nếu không có ảo hóa ĐTĐM sẽ rất khó triển khai va hoạt động không hiệu quả

- Ảo hóa góp phần tạo nên các khái niêm trong ĐTĐM như: “Pay for what you use”,

“infinite availability- use as much you want”

b) Clustering

Tổng quan:

Tổng quan về công nghệ Clustering

Clustering là một kiến trúc nhằm đảm bảo nâng cao khả năng sẵn sàng cho các hệ thống mạng máy tính Clustering cho phép sử dụng nhiều máy chủ kết hợp với nhau tạo thành một cụm (cluster) có khả năng chịu đựng hay chấp nhận sai sót (fault-tolerant) nhằm nâng cao độ sẵn sàng của hệ thống mạng Cluster là một hệ thống bao gồm nhiều máy chủ được kết nối với nhau theo dạng song song hay phân tán và được sử dụng như một tài nguyên thống nhất Nếu một máy chủ ngừng hoạt động do bị sự cố hoặc để nâng cấp, bảo trì, thì toàn bộ công việc mà máy chủ này đảm nhận sẽ được tự động chuyển sang cho một máy chủ khác (trong cùng một cluster) mà không làm cho hoạt động của hệ thống bị ngắt hay gián đoạn Quá trình này gọi là “fail-over”; và việc phục hồi tài nguyên của một máy chủ trong hệ thống (cluster) được gọi là “fail-back”

Yêu cầu khi lắp đặt hệ thống Clustering:

 Yêu cầu về tính sẵn sàng cao (availability) Các tài nguyên mạng phải luôn sẵn sàng trong khả năng cao nhất để cung cấp và phục vụ các người dùng cuối và giảm thiểu sự ngưng hoạt động hệ thống ngoài ý muốn

 Yêu cầu về độ tin cậy cao (reliability) Độ tin cậy cao của cluster được hiểu

là khả năng giảm thiểu tần số xảy ra các sự cố, và nâng cao khả năng chịu đựng sai sót của hệ thống

Trang 9

 Yêu cầu về khả năng mở rộng được (scalability) Hệ thống phải có khả năng

dễ dàng cho việc nâng cấp, mở rộng trong tương lai Việc nâng cấp mở rộng bao hàm cả việc thêm các thiết bị, máy tính vào hệ thống để nâng cao chất lượng dịch vụ, cũng như việc thêm số lượng người dùng, thêm ứng dụng, dịch vụ và thêm các tài nguyên mạng khác

Cấu trúc của Cluster

 Cluster được tổ chức thành các nhóm gọi là các farm hay pack Trong hầu hết các trường hợp, các dịch vụ ở tầng trước và giữa (front-end and middle-tiers services) được tổ chức thành các farm sử dụng các clone, trong khi đó các dịch vụ tầng sau (back-end services) được tổ chức thành các pack Các khái niệm farm, pack và clone trong hệ thống cluster sẽ được làm rõ ngay dưới đây

 Cluster Farm là một nhóm các máy chủ chạy các dịch vụ giống nhau, nhưng không dùng chung cơ sở dữ liệu Được gọi là farm (trang trại) bởi vì chúng

xử lý bất cứ yêu cầu nào gửi đến cho chúng bằng các bản sao cơ sở dữ liệu (tài nguyên) giống hệt nhau được lưu giữ cục bộ, chứ không dùng chung một bản cơ sở dữ liệu Cũng bởi tính chất này nên các máy chủ thành viên của farm làm việc độc lập và chúng được gọi là clone (clone là máy tính được thiết kế để mô phỏng chức năng của máy tính khác).

 Cluster Pack là một nhóm các máy chủ hoạt động cùng với nhau và chia sẻ với nhau các phần của cơ sở dữ liệu Được gọi là pack (khối) vì sự hoạt động của các máy chủ thành viên của pack có liên hệ chặt chẽ với nhau và chúng làm việc theo một phương thức thống nhất để quản lý và duy trì các dịch vụ.

Nguyên lý hoạt động của một Cluster

Trang 10

 Trong một cluster có nhiều nút có thể kết hợp cả nút chủ động và nút thụ động Trong những mô hình loại này việc quyết định một nút được cấu hình là chủ động hay thụ động rất quan trọng Để hiểu lý do tại sao, hãy xem xét các tình huống sau:

 Nếu một nút chủ động bị sự cố và có một nút thụ động đang sẵn sàng, các ứng dụng và dịch vụ đang chạy trên nút hỏng có thể lập tức được chuyển sang nút thụ động Vì máy chủ đóng vai trò nút thụ động hiện tại chưa chạy ứng dụng hay dịch vụ gì cả nên nó có thể gánh toàn bộ công việc của máy chủ hỏng mà không ảnh hưởng gì đến các ứng dụng và dịch vụ cung cấp cho người dùng cuối (Ngầm định rằng các các máy chủ trong cluster có cấu trúc phần cứng giống nhau).

 Nếu tất cả các máy chủ trong cluster là chủ động và có một nút bị sự cố, các ứng dụng và dịch vụ đang chạy trên máy chủ hỏng sẽ phải chuyển sang một máy chủ khác cũng đóng vai trò nút chủ động Vì là nút chủ động nên bình thường máy chủ này cũng phải đảm nhận một số ứng dụng hay dịch vụ gì đó, khi có sự cố xảy ra thì nó sẽ phải gánh thêm công việc của máy chủ hỏng Do vậy để đảm bảo hệ thống hoạt động bình thường kể cả khi có

sự cố thì máy chủ trong cluster cần phải có cấu hình dư ra đủ để có thể gánh thêm khối lượng công việc của máy chủ khác khi cần.

 Trong cấu trúc cluster mà mỗi nút chủ động được dự phòng bởi một nút thụ động, các máy chủ cần có cấu hình sao cho với khối lượng công việc trung bình chúng sử dụng hết khoảng 50% CPU và dung lượng bộ nhớ.

Trang 11

4 Tìm hiểu danh sách 3 công ty kinh doanh trên nền tảng điện toán đám mây ở Việt Nam và giới

thiệu về công ty tốt nhất theo quan điểm của nhóm

về khả năng phát triển dịch vụ của công ty này.

Các công ty kinh doanh trên nền tảng điện toán đám mây ở Việt Nam

- IBM

- Microsoft

- FPT

- Viettel

Theo quan điểm của nhóm công ty FPT tốt nhất về khả năng phát triển dịch vụ này

IBM là doanh nghiệp tiên phong khai trương trung tâm điện toán đám mây tại Việt Nam vào tháng 9/2008 với khách hàng đầu tiên là là Công ty cổ phần công nghệ và truyền thông Việt Nam (VNTT) Sau đó, Microsoft là một trong những “đại gia” tiếp bước điện toán đám mây ở thị trường Việt Nam, nhưng hiện vẫn đang trong giai đoạn phát triển thử nghiệm Theo Ông Võ Tấn Long, Tổng Giám đốc công ty

Trang 12

IBM Việt Nam: “Điện toán đám mây không còn là xu hướng mà là thực tế đang diễn ra Có thể nói Việt Nam là một trong những nước đầu tiên ở ASEAN đưa vào

sử dụng điện toán đám mây Từ năm 2008 đến nay, ngày càng có nhiều khách hàng tìm đến các dịch vụ điện toán đám mây của IBM”

Tiếp đến, điện toán đám mây ở Việt Nam bắt đầu có những tín hiệu khả quan khi khi FPT - nhà công nghệ hàng đầu của Việt Nam đã khẳng định vị thế tiên phong của mình trong công nghệ bằng lễ ký kết với Microsoft châu Á-Trend Micro để hợp tác phát triển "đám mây" ở châu Á Nhận định về hợp tác này, đại diện Trend Micro cho rằng, điện toán đám mây sẽ đem lại cơ hội cho Việt Nam bởi công nghệ hoàn toàn mới sẽ giúp giới trẻ Việt Nam vốn rất năng động sẽ có thêm điều kiện sáng tạo

và phát huy tài năng của mình Đồng thời, với tiềm năng về nhân lực, cơ sở hạ tầng

và nhất là "tính sẵn sàng" của FPT hai bên sẽ không chỉ dừng lại ở cung cấp dịch vụ

về điện toán đám mây ở Việt Nam mà sẽ vươn ra toàn cầu

Sau cuộc ký kết đó một tuần, FPT tiếp tục hợp tác cùng "đại gia" Microsoft vào tháng 05/2010 Tâm điểm của hợp tác này là một thỏa thuận nhằm phát triển nền tảng điện toán đám mây dựa trên công nghệ của Microsoft Hai bên đều cùng hướng đến việc phát triển nền tảng cho các dịch vụ đám mây bao gồm truyền thông, hợp tác, lưu trữ dữ liệu và các dịch vụ hạ tầng, nhằm phục vụ nhu cầu của đông đảo khách hàng

Với tầm nhìn và đội ngũ kỹ thuật mạnh mẻ của FPT hứa hẹn sẻ mang lại nhiều thành công và đỗi mới cho điện toán đám mây Việt Nam

Ở FPT đang triển khai các dịch vụ điện toán đám mây như sau:

- Dịch vụ hạ tầng Iaas( Infranstructure as a Service):IaaS cung cấp dịch vụ cơ bản bao gồm năng lực tính toán, không gian lưu trữ, kết nối mạng tới khách hàng Khách hàng (cá nhân hoặc tổ chức) có thể sử dụng tài nguyên hạ tầng này để đáp ứng nhu cầu tính toán hoặc cài đặt ứng dụng riêng cho mình Với dịch vụ này khách hàng làm chủ hệ điều hành, lưu trữ và các ứng dụng do khách hàng phát triển và cài đặt Khách hàng điển hình của dịch vụ IaaS có thể là mọi đối tượng cần tới một máy tính và tự cài đặt ứng dụng của mình

- Dịch vụ nền tảng PaaS (Platform as a Service) : PaaS cung cấp nền tảng điện toán cho phép khách hàng phát triển các phần mềm, phục vụ nhu cầu tính toán hoặc xây dựng thành dịch vụ trên nền tảng Cloud đó Dịch vụ PaaS có thể được cung cấp dưới dạng các hạ tầng trao đổi thông tin ứng dụng (middleware), các nền tảng ứng dụng (application server) cùng các công cụ lập trình với ngôn ngữ lập trình nhất định để xây dựng ứng dụng Dịch vụ PaaS cũng có thể được xây dựng riêng và cung cấp cho khách hàng thông qua một API riêng Khách hàng

Trang 13

xây dựng ứng dụng và tương tác với hạ tầng ĐTĐM thông qua API đó Ở mức PaaS, khách hàng không quản lý nền tảng Cloud hay các tài nguyên lớp như hệ điều hành, lưu trữ ở lớp dưới Khách hàng điển hình của dịch vụ PaaS chính là các nhà phát triển ứng dụng (ISV)

- Dịch vụ Phần mềm SaaS (Software as a Service) SaaS cung cấp các ứng dụng hoàn chỉnh như một dịch vụ theo yêu cầu cho nhiều khách hàng với chỉ một phiên bản cài đặt Khách hàng lựa chọn ứng dụng phù hợp với nhu cầu và sử dụng mà không quan tâm tới hay bỏ công sức quản lý tài nguyên tính toán bên dưới Dịch vụ SaaS nổi tiếng nhất phải kể đến Salesforce.com với các ứng dụng cho doanh nghiệp mà nổi bật nhất là CRM Các ứng dụng SaaS cho người dùng cuối phổ biến là các ứng dụng office Online của Microsoft hay Google Docs của Google

5 Tìm hiểu và trình bày một công ty điển hình kinh doanh trên nền tảng điện toán đám mây trên thế giới theo quan điểm của nhóm Nêu những bài học

về khả năng phát triển của công ty này, sử dụng Điện toán đám mây để áp dụng tại Việt Nam.

Điện toán đám mây (Cloud computing) không còn là điều gì mới mẻ Bắt nguồn từ điện toán lưới (grid computing) từ những năm 80, điện toán theo nhu cầu (Utility computing) và phần mềm dịch vụ (SaaS), Oracle là nhà tiên phong trong việc triển khai công nghệ này Cho đến nay, điện toán đám mây đang được phát triển và cung cấp bởi nhiều nhà cung cấp, trong đó có Amazon, Google, DataSynapse, Salesforce cũng như các nhà cung cấp truyền thống Microsoft, IBM, HP… Đã được rất nhiều người dùng cá nhân cho đến các công ty lớn như L’Oréal, General Electric, Ebay, Coca-cola… chấp nhận và sử dụng

Công ty điển hình về điện toán đám mây ở đây là Google Với hơn 5 triện doanh nghiệp sử dụng Google Apps

Phổ biến nhất về dịch vụ điện toán đám mây của google là dịch vụ Google Drive Đây là dịch vụ lưu trữ trực tuyến, cho phép người dùng truy cập dữ liệu ở bất kỳ đâu và chia sẻ chúng với bất kỳ ai mình muốn

Ngày đăng: 10/04/2016, 14:05

TỪ KHÓA LIÊN QUAN

w