Đồ án HCMUTE: Tìm hiểu Cloud Services và Xây dựng Ứng dụng Android

Đồ án nghiên cứu hcmute tìm hiểu cloud services và xây dựng ứng dụng android sử dụng cloud services, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán kỹ thuật.

Chuyên ngành

Công nghệ Thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp/ Khóa luận tốt nghiệp

2015

149
1
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

MỤC LỤC

NHIỆM VỤ KHÓA LUẬN TỐT NGHIỆP

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

DANH MỤC HÌNH ẢNH

DANH MỤC BẢNG BIỂU

PHẦN MỞ ĐẦU

PHẦN NỘI DUNG

1. CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES

1.1. Tìm hiểu Cloud Computing

1.2. Định nghĩa Cloud Computing

1.3. Tính chất và đặc điểm của Cloud Computing

1.3.1. Tính chất của Cloud Computing

1.3.2. Tính chất dùng chung tài nguyên của Cloud Computing

1.4. Các mô hình Cloud Computing

1.4.1. Mô hình dịch vụ

1.4.2. Mô hình triển khai

1.5. Kiến trúc Cloud Computing

1.6. Lợi ích của Cloud Computing

1.7. Các nền tảng Cloud Computing phổ biến

1.7.2. Microsoft Windows Azure

1.7.3. Google App Engine

1.7.3.2. Google App Engine
1.7.3.3. Các thành phần chính
1.7.3.4. Các thư viện dịch vụ

1.8. Tìm hiểu Google Cloud Print

1.8.2. Sơ đồ hoạt động của Google Cloud Print

1.8.2.1. Xác thực bằng việc đăng nhập (ClientLogin authorization)
1.8.2.2. Sử dụng dịch vụ Google Cloud Print
1.8.2.2.1. Submitting Print Jobs
1.8.2.2.2. Receiving Print Jobs

2. CHƯƠNG 2: GIỚI THIỆU VỀ ANDROID

2.1. Tổng quan về Android

2.2. Cấu tạo và kiến trúc

2.3. Môi trường phát triển Android SDK

2.4. Tạo ứng dụng đầu tiên

2.5. Các thành phần ứng dụng

3. CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG

3.1. Đặt tả ứng dụng

3.1.1. Mục đích phát triển ứng dụng

3.1.2. Đặc tả các chức năng

3.1.2.1. Xem activity chính
3.1.2.2. Xem tab Main menu
3.1.2.3. Xem tab Local
3.1.2.4. Xem tab Web
3.1.2.4.1. Usecase tổng quát
3.1.2.4.2. Các Usecase chi tiết
3.1.2.4.2.1. Usecase Manage Jobs
3.1.2.4.2.2. Usecase Manage Printers
3.1.2.4.2.3. Usecase Share And Unshare Printer
3.1.2.4.2.4. Usecase Print 1 File In Cloud
3.1.2.4.2.5. Usecase Print 1 File In Local
3.1.2.4.2.6. Usecase Print Document
3.1.2.4.2.7. Usecase Print Image
3.1.2.4.2.8. Usecase Print Drawing
3.1.2.4.2.9. Usecase Print A Capturing Image
3.1.2.4.2.10. Usecase Print Contacts
3.1.2.4.2.11. Usecase Print Plaint Text
3.1.2.4.2.12. Usecase Print Files In Dropbox
3.1.2.4.2.13. Usecase Print Files In Box
3.1.2.4.2.14. Usecase Print A Capturing Webpages
3.1.2.4.2.15. Usecase Print Files In Google Drive
3.1.2.4.2.16. Usecase Print Inbox, Sent, Draft Of Gmail

3.2. Sơ đồ thiết kế lớp

3.3. Thiết kế giao diện

3.3.1. Giao diện của tab Main Menu

3.3.2. Giao diện About

3.3.3. Giao diện Login

3.3.4. Giao diện Manage Printers

3.3.5. Giao diện Manage Jobs

3.3.6. Giao diện Share Printer

3.3.7. Giao diện của tab Web

3.3.8. Giao diện của tab Local

3.3.9. Giao diện Select Printer

3.3.10. Giao diện Print

3.3.11. Giao diện Drawing

3.3.12. Giao diện Choose Brush

3.3.13. Giao diện Choose Eraser

3.3.14. Giao diện Capture Image

3.3.15. Giao diện Print Image

3.3.16. Giao diện Contacts

3.3.17. Giao diện Plaint Text

3.3.18. Giao diện Print Text

3.3.19. Giao diện Print trên Dropbox

3.3.20. Giao diện Print trên Box

3.3.21. Giao diện Print Webpages

3.3.22. Giao diện Print trên Google Drive

3.3.23. Giao diện Print trên Gmail

3.4. Một số Testcase

3.4.2. Testcase Manage Printers

3.4.3. Testcase Manage Jobs

3.4.4. Testcase Share Printer

3.4.11. Testcase Print File In Dropbox

3.4.12. Testcase Print File In Box

3.4.13. Testcase Print File In Google Drive

3.4.14. Testcase Print Inbox, Send, Draft Of Gmail

PHẦN KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

1. Kết quả đạt được

2. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Đồ án Cloud Services Ứng dụng Android

Đề tài Đồ án Cloud Servicesứng dụng Android đang trở nên vô cùng quan trọng trong bối cảnh công nghệ thông tin phát triển mạnh mẽ. Nhu cầu lưu trữ, chia sẻ, và in ấn thông tin ngày càng tăng, đặc biệt với sự bùng nổ của công nghệ di động. Ứng dụng in ấn từ xa trên nền tảng Android, kết hợp với tính năng Cloud Print của Google, mang lại sự tiện lợi và linh hoạt cho người dùng. Đề tài này không chỉ tập trung vào việc tìm hiểu Cloud Services mà còn hướng đến xây dựng một ứng dụng thực tế, giải quyết vấn đề in ấn từ xa. Nhóm tác giả đã khảo sát các ứng dụng tương tự, tìm hiểu công nghệ, đặc tả yêu cầu, thiết kế giao diện, cài đặt và kiểm thử ứng dụng để tạo ra một sản phẩm hoàn thiện. Việc áp dụng Cloud Computing vào ứng dụng di động mang lại nhiều ưu điểm vượt trội, hứa hẹn thay thế dần phương thức in ấn truyền thống. Nghiên cứu này không chỉ có ý nghĩa về mặt học thuật mà còn có giá trị thực tiễn cao, giúp sinh viên tiếp cận công nghệ mới và áp dụng vào thực tế. Đề tài bao gồm ba chương chính: tìm hiểu Cloud Services, giới thiệu về Android, và xây dựng ứng dụng. Mỗi chương đi sâu vào các khía cạnh khác nhau, từ lý thuyết đến thực hành, nhằm cung cấp một cái nhìn toàn diện về chủ đề. Điện toán đám mây, với các đặc tính như tự phục vụ theo nhu cầu, truy xuất diện rộng, dùng chung tài nguyên, khả năng co giãn, và điều tiết dịch vụ, đóng vai trò then chốt trong việc xây dựng các ứng dụng hiện đại. Việc lựa chọn Google Cloud Print làm nền tảng cho ứng dụng không chỉ tận dụng được hạ tầng mạnh mẽ của Google mà còn mang lại khả năng tương thích và dễ dàng tích hợp với các dịch vụ khác.

1.1. Tại sao Cloud Services Android lại quan trọng

Trong kỷ nguyên số, khả năng truy cập thông tin mọi lúc mọi nơi là yếu tố then chốt. Cloud Services cung cấp hạ tầng lưu trữ và xử lý dữ liệu linh hoạt, cho phép người dùng truy cập tài liệu từ bất kỳ thiết bị nào. Kết hợp với sự phổ biến của ứng dụng Android, giải pháp này mang đến sự tiện lợi chưa từng có. Theo nghiên cứu từ Gartner, thị trường Cloud Services tiếp tục tăng trưởng mạnh mẽ, chứng tỏ nhu cầu ngày càng cao của doanh nghiệp và người dùng cá nhân. Việc xây dựng ứng dụng trên nền tảng Android tận dụng được hệ sinh thái rộng lớn của Google, giúp tiếp cận hàng tỷ người dùng trên toàn thế giới.

1.2. Mục tiêu và phạm vi nghiên cứu của đồ án

Mục tiêu chính của đồ án là tìm hiểu sâu về mô hình điện toán đám mây và xây dựng ứng dụng Mobile Printer trên Android. Phạm vi nghiên cứu bao gồm các ứng dụng in ấn trên Android, dịch vụ Cloud Computing, lập trình Android, Network Application, và đặc biệt là dịch vụ Google Cloud Print. Việc nghiên cứu này nhằm nâng cao khả năng tự học, làm việc nhóm, và trình độ chuyên môn về xây dựng ứng dụng mobile trên nền tảng Android. Đề tài cũng hướng đến việc học hỏi kiến thức mới và trau dồi kinh nghiệm thực tế, chuẩn bị cho sự nghiệp sau này.

1.3. Ý nghĩa khoa học và thực tiễn của việc in ấn trên Cloud

In ấn trên Cloud là một công nghệ mới, có nhiều ưu điểm so với in ấn truyền thống. Việc hoàn thành đồ án này sẽ cung cấp tài liệu tham khảo hữu ích cho sinh viên muốn tiếp cận công nghệ mới, đồng thời cung cấp một ứng dụng demo giúp dễ hiểu và áp dụng hơn. In ấn trên Cloud có tính thực tiễn cao, có thể áp dụng ngay bây giờ hoặc trong tương lai. Ưu điểm vượt trội của nó bao gồm khả năng in ấn từ xa, quản lý máy in dễ dàng, và tiết kiệm chi phí. Nghiên cứu này không chỉ có giá trị về mặt học thuật mà còn có tiềm năng ứng dụng rộng rãi trong thực tế.

II. Thách thức Giải pháp khi triển khai Cloud Services cho Android

Việc triển khai Cloud Services cho ứng dụng Android không phải lúc nào cũng suôn sẻ. Các thách thức có thể kể đến như vấn đề bảo mật dữ liệu, hiệu năng ứng dụng, và sự phức tạp trong việc tích hợp các dịch vụ Cloud khác nhau. Cloud Computing mang lại nhiều lợi ích, nhưng cũng đặt ra yêu cầu cao về bảo mật và quản lý dữ liệu. Các nhà phát triển cần đảm bảo dữ liệu người dùng được bảo vệ an toàn, tránh các cuộc tấn công và xâm nhập trái phép. Hiệu năng ứng dụng cũng là một yếu tố quan trọng cần xem xét. Ứng dụng cần hoạt động mượt mà, nhanh chóng, ngay cả khi kết nối mạng không ổn định. Sự phức tạp trong việc tích hợp các dịch vụ Cloud khác nhau có thể gây khó khăn cho các nhà phát triển. Cần có kiến thức sâu rộng về các API và giao thức Cloud để có thể xây dựng các ứng dụng phức tạp. Để giải quyết các thách thức này, các nhà phát triển cần áp dụng các phương pháp bảo mật tiên tiến, tối ưu hóa hiệu năng ứng dụng, và sử dụng các công cụ hỗ trợ tích hợp Cloud. Việc lựa chọn nền tảng Cloud phù hợp cũng đóng vai trò quan trọng. Google App Engine, Amazon Web Services, và Microsoft Azure là những lựa chọn phổ biến, mỗi nền tảng có những ưu điểm và nhược điểm riêng. Ngoài ra, cần chú trọng đến việc thiết kế kiến trúc ứng dụng linh hoạt, dễ dàng mở rộng và bảo trì. Áp dụng các phương pháp Agile và DevOps cũng giúp tăng tốc quá trình phát triển và triển khai ứng dụng Cloud. Cuối cùng, việc đào tạo và nâng cao kỹ năng cho đội ngũ phát triển là yếu tố then chốt để đảm bảo thành công của dự án Cloud Services.

2.1. Vấn đề bảo mật dữ liệu trên Cloud và cách khắc phục

Bảo mật dữ liệu là một trong những mối quan tâm hàng đầu khi sử dụng Cloud Services. Dữ liệu được lưu trữ trên các máy chủ từ xa, do đó dễ bị tấn công và xâm nhập. Để đảm bảo an toàn, cần áp dụng các biện pháp bảo mật như mã hóa dữ liệu, kiểm soát truy cập, và giám sát hoạt động. Các nhà cung cấp Cloud thường cung cấp các công cụ và dịch vụ bảo mật, nhưng người dùng cũng cần chủ động thực hiện các biện pháp phòng ngừa. Việc tuân thủ các tiêu chuẩn bảo mật quốc tế như ISO 27001 cũng giúp tăng cường độ tin cậy của hệ thống.

2.2. Tối ưu hóa hiệu năng ứng dụng Android khi sử dụng Cloud

Hiệu năng ứng dụng Android có thể bị ảnh hưởng khi sử dụng Cloud Services, đặc biệt khi kết nối mạng không ổn định. Để tối ưu hóa hiệu năng, cần giảm thiểu lượng dữ liệu truyền tải, sử dụng bộ nhớ cache hiệu quả, và xử lý các tác vụ nặng trên máy chủ Cloud. Việc sử dụng các thư viện và công cụ tối ưu hóa hiệu năng cũng giúp cải thiện tốc độ và trải nghiệm người dùng. Ngoài ra, cần theo dõi và phân tích hiệu năng ứng dụng thường xuyên để phát hiện và khắc phục các vấn đề kịp thời.

2.3. Tích hợp các dịch vụ Cloud khác nhau vào ứng dụng Android

Tích hợp các dịch vụ Cloud khác nhau có thể phức tạp, đòi hỏi kiến thức sâu rộng về các API và giao thức. Để đơn giản hóa quá trình này, có thể sử dụng các công cụ và thư viện hỗ trợ tích hợp, như Retrofit, OkHttp, và Firebase. Cần chú ý đến việc xử lý lỗi và đồng bộ dữ liệu giữa các dịch vụ Cloud. Việc thiết kế kiến trúc ứng dụng linh hoạt cũng giúp dễ dàng thêm hoặc thay đổi các dịch vụ Cloud trong tương lai.

III. Phương pháp xây dựng ứng dụng Android dùng Google Cloud Print

Xây dựng ứng dụng Android sử dụng Google Cloud Print đòi hỏi kiến thức về lập trình Android, API của Google Cloud Print, và các khái niệm về Cloud Computing. Ứng dụng cần có khả năng xác thực người dùng, tìm kiếm máy in, gửi yêu cầu in, và quản lý các công việc in. Việc sử dụng Android SDK và các thư viện hỗ trợ giúp đơn giản hóa quá trình phát triển. Cần chú ý đến việc xử lý lỗi và hiển thị thông báo cho người dùng. Ứng dụng cần được kiểm tra kỹ lưỡng trên nhiều thiết bị Android khác nhau để đảm bảo tính tương thích và ổn định. Để xây dựng ứng dụng, cần thực hiện các bước sau: 1. Thiết lập môi trường phát triển Android. 2. Tìm hiểu API của Google Cloud Print. 3. Thiết kế giao diện người dùng. 4. Lập trình các chức năng chính của ứng dụng. 5. Kiểm tra và sửa lỗi. 6. Đóng gói và phát hành ứng dụng. Việc sử dụng các mẫu thiết kế phổ biến giúp tăng tốc quá trình phát triển và đảm bảo chất lượng ứng dụng. Ngoài ra, cần chú trọng đến việc bảo mật dữ liệu và tuân thủ các quy định của Google Play Store.

3.1. Thiết lập môi trường phát triển Android và cài đặt SDK

Để bắt đầu xây dựng ứng dụng Android, cần thiết lập môi trường phát triển. Bước đầu tiên là cài đặt Android SDK (Software Development Kit), cung cấp các công cụ và thư viện cần thiết để phát triển ứng dụng. Sau đó, cài đặt Android Studio, một IDE (Integrated Development Environment) mạnh mẽ, hỗ trợ lập trình, gỡ lỗi, và đóng gói ứng dụng. Cần cấu hình Android Studio để nhận diện Android SDK và tạo các thiết bị ảo (emulator) để kiểm tra ứng dụng. Việc cập nhật Android SDKAndroid Studio thường xuyên giúp đảm bảo sử dụng các tính năng mới nhất và khắc phục các lỗi bảo mật.

3.2. Tìm hiểu và sử dụng API của Google Cloud Print trong Android

Google Cloud Print cung cấp API cho phép các ứng dụng gửi yêu cầu in đến các máy in đã được đăng ký trên Cloud. Để sử dụng API này, cần đăng ký ứng dụng trên Google Developers Console và lấy API key. Sau đó, sử dụng API để xác thực người dùng, tìm kiếm máy in, tạo công việc in, và theo dõi trạng thái in. Việc xử lý lỗi và hiển thị thông báo cho người dùng là rất quan trọng. Cần đọc kỹ tài liệu của Google Cloud Print API để hiểu rõ các tham số và phương thức sử dụng.

3.3. Thiết kế giao diện người dùng UI cho ứng dụng Android

Giao diện người dùng (UI) đóng vai trò quan trọng trong trải nghiệm người dùng. Cần thiết kế giao diện đơn giản, dễ sử dụng, và trực quan. Sử dụng các thành phần UI của Android SDK, như TextView, EditText, Button, ListView, và RecyclerView. Tuân thủ các nguyên tắc thiết kế của Material Design giúp tạo ra giao diện hiện đại và nhất quán. Cần kiểm tra giao diện trên nhiều kích thước màn hình khác nhau để đảm bảo tính tương thích và hiển thị tốt trên mọi thiết bị.

IV. Ứng dụng thực tế Ứng dụng Android Printer dùng Cloud Services

Ứng dụng Mobile Printer, được xây dựng trên nền tảng Android và sử dụng Cloud Services, mang lại giải pháp in ấn tiện lợi và linh hoạt. Ứng dụng cho phép người dùng in ấn từ xa, quản lý máy in, và chia sẻ máy in với người khác. Với giao diện thân thiện và dễ sử dụng, ứng dụng phù hợp với mọi đối tượng người dùng. Ứng dụng tích hợp tính năng Google Cloud Print, cho phép in ấn từ bất kỳ thiết bị nào có kết nối internet. Ngoài ra, ứng dụng hỗ trợ in ấn từ các dịch vụ Cloud khác, như Dropbox, Google Drive, và Box. Ứng dụng đã được kiểm tra kỹ lưỡng và chứng minh tính ổn định và hiệu năng cao. Ứng dụng đáp ứng nhu cầu in ấn ngày càng tăng của người dùng di động. Ứng dụng có thể được mở rộng để hỗ trợ thêm nhiều tính năng, như in ấn từ email, in ấn từ mạng xã hội, và in ấn từ các ứng dụng khác. Ứng dụng đóng góp vào việc thúc đẩy việc sử dụng Cloud Computing trong lĩnh vực in ấn.

4.1. Chức năng chính của ứng dụng Android Printer In ấn từ xa

Chức năng in ấn từ xa là một trong những tính năng quan trọng nhất của ứng dụng Android Printer. Người dùng có thể in ấn tài liệu từ bất kỳ đâu, chỉ cần có kết nối internet. Ứng dụng cho phép chọn máy in, chọn số lượng bản in, và chọn các tùy chọn in khác. Việc sử dụng Google Cloud Print giúp đảm bảo tính tương thích và ổn định của chức năng in ấn từ xa.

4.2. Quản lý máy in và chia sẻ máy in với người dùng khác

Ứng dụng Android Printer cho phép người dùng quản lý các máy in đã được đăng ký trên Google Cloud Print. Người dùng có thể thêm, xóa, và sửa thông tin máy in. Ngoài ra, ứng dụng cho phép chia sẻ máy in với người dùng khác, giúp nhiều người có thể sử dụng chung một máy in. Việc quản lý và chia sẻ máy in trở nên dễ dàng và thuận tiện hơn.

4.3. Tích hợp với các dịch vụ Cloud khác Dropbox Google Drive Box

Ứng dụng Android Printer tích hợp với các dịch vụ Cloud khác, như Dropbox, Google Drive, và Box, cho phép người dùng in ấn tài liệu trực tiếp từ các dịch vụ này. Việc tích hợp này giúp người dùng tiết kiệm thời gian và công sức, không cần phải tải tài liệu về máy trước khi in. Cần chú ý đến việc xác thực người dùng và cấp quyền truy cập vào các dịch vụ Cloud này.

V. Đánh giá Hướng phát triển Đồ án Cloud Services Ứng dụng Android

Đồ án Cloud Servicesứng dụng Android đã đạt được nhiều kết quả khả quan. Ứng dụng Mobile Printer hoạt động ổn định và đáp ứng nhu cầu in ấn của người dùng. Nghiên cứu đã cung cấp kiến thức sâu rộng về Cloud Computing và lập trình Android. Tuy nhiên, vẫn còn nhiều hướng phát triển để cải thiện ứng dụng và mở rộng phạm vi nghiên cứu. Trong tương lai, có thể thêm nhiều tính năng mới, như in ấn từ email, in ấn từ mạng xã hội, và in ấn từ các ứng dụng khác. Ngoài ra, có thể tối ưu hóa hiệu năng ứng dụng và cải thiện giao diện người dùng. Việc nghiên cứu các công nghệ Cloud mới cũng là một hướng đi tiềm năng. Đồ án đóng góp vào việc thúc đẩy việc sử dụng Cloud Computing trong lĩnh vực in ấn và cung cấp tài liệu tham khảo hữu ích cho sinh viên và nhà phát triển.

5.1. Kết quả đạt được và những hạn chế cần khắc phục

Đồ án đã đạt được kết quả là xây dựng thành công ứng dụng Android Printer có khả năng in ấn từ xa thông qua Google Cloud Print. Tuy nhiên, ứng dụng vẫn còn một số hạn chế cần khắc phục, như chưa hỗ trợ in ấn từ email và mạng xã hội, hiệu năng chưa được tối ưu hóa, và giao diện còn đơn giản. Việc khắc phục những hạn chế này sẽ giúp ứng dụng trở nên hoàn thiện hơn.

5.2. Hướng phát triển và mở rộng ứng dụng Android trong tương lai

Trong tương lai, có thể phát triển ứng dụng Android Printer theo nhiều hướng khác nhau. Có thể thêm các tính năng mới, như in ấn từ email và mạng xã hội, hỗ trợ in ấn từ các ứng dụng khác, và tích hợp các công nghệ Cloud mới. Ngoài ra, có thể cải thiện hiệu năng ứng dụng, tối ưu hóa giao diện người dùng, và mở rộng phạm vi hỗ trợ ngôn ngữ.

5.3. Tiềm năng ứng dụng và đóng góp của đồ án vào thực tế

Đồ án có tiềm năng ứng dụng rộng rãi trong thực tế. Ứng dụng Android Printer có thể được sử dụng bởi mọi người có nhu cầu in ấn từ xa, đặc biệt là những người thường xuyên di chuyển. Ứng dụng có thể được sử dụng trong các văn phòng, trường học, và gia đình. Đồ án đóng góp vào việc thúc đẩy việc sử dụng Cloud Computing trong lĩnh vực in ấn và cung cấp tài liệu tham khảo hữu ích cho sinh viên và nhà phát triển.

VI. Kết luận Cloud Services và Ứng dụng Android Tương lai

Đồ án Cloud Services & ứng dụng Android đã thành công trong việc khám phá tiềm năng của việc kết hợp hai công nghệ này để tạo ra một giải pháp in ấn di động hiệu quả. Cloud Computing cung cấp hạ tầng linh hoạt và mạnh mẽ, trong khi Android cung cấp nền tảng rộng lớn để tiếp cận người dùng. Việc sử dụng Google Cloud Print giúp đơn giản hóa quá trình in ấn và đảm bảo tính tương thích. Trong tương lai, Cloud Servicesứng dụng Android sẽ tiếp tục phát triển và đóng vai trò quan trọng trong nhiều lĩnh vực khác nhau. Đồ án này cung cấp một nền tảng vững chắc cho việc nghiên cứu và phát triển các ứng dụng Cloud trên nền tảng Android.

6.1. Tóm tắt kết quả và những bài học kinh nghiệm rút ra

Qua quá trình thực hiện đồ án, nhóm đã đạt được nhiều kết quả và rút ra được nhiều bài học kinh nghiệm quý báu. Nhóm đã nắm vững kiến thức về Cloud Computing và lập trình Android, xây dựng thành công ứng dụng Android Printer, và học được cách làm việc nhóm hiệu quả. Nhóm cũng nhận ra những hạn chế của ứng dụng và các hướng phát triển trong tương lai.

6.2. Triển vọng và tiềm năng phát triển của Cloud Services và Android

Cloud ServicesAndroid là hai công nghệ có tiềm năng phát triển rất lớn trong tương lai. Cloud Computing sẽ tiếp tục phát triển và trở nên phổ biến hơn, cung cấp các dịch vụ linh hoạt và mạnh mẽ hơn. Android sẽ tiếp tục là hệ điều hành di động hàng đầu, cung cấp nền tảng rộng lớn để phát triển ứng dụng. Việc kết hợp hai công nghệ này sẽ tạo ra nhiều giải pháp sáng tạo và hiệu quả.

6.3. Khuyến nghị cho sinh viên và nhà phát triển quan tâm đến chủ đề này

Đối với sinh viên và nhà phát triển quan tâm đến chủ đề này, khuyến nghị nên bắt đầu bằng việc tìm hiểu kiến thức cơ bản về Cloud Computing và lập trình Android. Sau đó, nên thực hành xây dựng các ứng dụng đơn giản để làm quen với các công cụ và API. Nên tham gia các cộng đồng và diễn đàn để học hỏi kinh nghiệm từ những người khác. Cuối cùng, nên thử thách bản thân bằng cách thực hiện các dự án phức tạp hơn và đóng góp vào các dự án mã nguồn mở.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI từ nội dung tài liệu gốc; tài liệu do người dùng đóng góp và được kiểm duyệt trước khi xuất bản. Báo lỗi nội dung.

22/09/2025
Đồ án hcmute tìm hiểu cloud services và xây dựng ứng dụng android sử dụng cloud services

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 21 1.3 Tính chất và đặc điểm của Cloud Computing 1.1 Tính chất của Cloud Computing - Cloud Computing có năm tính chất nổi bật so với mô hình truyền thống.1 Tính chất của Cloud Computing. Tự phục vụ theo nhu cầu (On-demand self-service) Mỗi khi có nhu cầu, người dùng chỉ cần gửi yêu cầu thông qua trang web cung cấp dịch vụ, hệ thống của nhà cung cấp sẽ đáp ứng yêu cầu của người dùng. Người dùng có thể tự phục vụ yêu cầu của mình như tăng thời gian sử dụng server, tăng dung lượng lưu trữ… mà không cần phải tương tác trực tiếp với nhà cung cấp dịch vụ, mọi nhu cầu về dịch vụ đều được xử lý trên môi trường web (Internet). Truy xuất diện rộng (Broad network access) Cloud Computing cung cấp các dịch vụ thông qua môi trường Internet.

Do đó, người dùng có kết nối Internet là có thể sử dụng dịch vụ. Hơn nữa, Cloud Computing ở dạng dịch vụ nên không đòi hỏi khả năng xử lý cao ở phía client, vì vậy người dùng có thể truy xuất bằng các thiết bị di dộng như điện thoại, PDA, laptop… Với Cloud Computing người dùng không còn bị phụ thuộc vị trí nữa, họ có thể truy xuất dịch vụ từ bất kỳ nơi nào, vào bất kỳ lúc nào có kết nối Internet. Dùng chung tài nguyên (Resource pooling) - Tài nguyên của nhà cung cấp dịch vụ được dùng chung, phục vụ cho nhiều người dùng dựa trên mô hình “multi-tenant”. Trong mô hình “multi-tenant”, tài nguyên CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 22 sẽ được phân phát động tùy theo nhu cầu của người dùng.

Khi nhu cầu của một khách hàng giảm xuống, thì phần tài nguyên dư thừa sẽ được tận dụng để phục vụ cho một khách hàng khác. Ví dụ như khách hàng A thuê 10 CPU mỗi ngày từ 7 giờ đến 11 giờ, một khách hàng B thuê 10 CPU tương tự mỗi ngày từ 13 giờ đến 17 giờ thì hai khách hàng này có thể dùng chung 10 CPU đó.2 Tính chất dùng chung tài nguyên của Cloud Computing. - Cloud Computing dựa trên công nghệ ảo hóa, nên các tài nguyên da phần là tài nguyên ảo. Các tài nguyên ảo này sẽ được cấp phát động theo sự thay đổi nhu cầu của từng khách hàng khác nhau.

Nhờ đó nhà cung cấp dịch vụ có thể phục vụ nhiều khách hàng hơn so với cách cấp phát tài nguyên tĩnh truyền thống. Khả năng co giãn (Rapid elasticity) - Đây là tích chất đặc biệt nhất, nổi bật nhất và quan trọng nhất của Cloud Computing. Đó là khả năng tự động mở rộng hoặc thu nhỏ hệ thống tùy theo nhu cầu của người dùng. Khi nhu cầu tăng cao, hệ thống sẽ tự mở rộng bằng cách thêm tài nguyên vào.

Khi nhu cầu giảm xuống, hệ thống sẽ tự giảm bớt tài nguyên. CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 23 - Ví dụ: khách hàng thuê một Server gồm 10 CPU. Thông thường do có ít truy cập nên chỉ cần 5 CPU là đủ, khi đó hệ thống quản lý của nhà cung cấp dịch vụ sẽ tự ngắt bớt 5 CPU dư thừa, khách hàng không phải trả phí cho những CPU dư thừa này (những CPU này sẽ được cấp phát cho các khách hàng khác có nhu cầu). Khi lượng truy cập tăng cao, nhu cầu tăng lên thì hệ thống quản lý của nhà cung cấp dịch vụ sẽ tự “gắn” thêm CPU vào, nếu nhu cầu tăng vượt quá 10 CPU thì khách hàng phải trả phí cho phần vượt mức theo thỏa thuận với nhà cung cấp.

- Khả năng co giãn giúp cho nhà cung cấp sử dụng tài nguyên hiệu quả, tận dụng triệt để tài nguyên dư thừa, phục vụ được nhiều khách hàng. Đối với người sử dụng dịch vụ, khả năng co giãn giúp họ giảm chi phí do họ chỉ trả phí cho những tài nguyên thực sự dùng. Điều tiết dịch vụ (Measured service) Hệ thống Cloud Computing tự động kiểm soát và tối ưu hóa việc sử dụng tài nguyên (dung lượng lưu trữ, đơn vị xử lý, băng thông…). Lượng tài nguyên sử dụng có thể được theo dõi, kiểm soát và báo cáo một cách minh bạch cho cả hai phía nhà cung cấp dịch vụ và người sử dụng.2 Đặc điểm của Cloud Computing - Nhanh chóng cải thiện với người dùng có khả năng cung cấp sẵn các tài nguyên cơ sở hạ tầng công nghệ một cách nhanh chóng và ít tốn kém.

- Chi phí được giảm đáng kể và chi phí vốn đầu tư được chuyển sang hoạt động chi tiêu. Điều này làm giảm rào cản cho việc tiếp nhận, chẳng hạn như cơ sở hạ tầng được cung cấp bởi đối tác thứ 3 và không cần phải mua để dùng cho các tác vụ tính toán thực hiện 1 lần hay chuyên sâu mà không thường xuyên. Việc định giá dựa trên cơ sở tính toán theo nhu cầu thì tốt đối với những tùy chọn dựa trên việc sử dụng và các kỹ năng IT được đòi hỏi tối thiểu (hay không được đòi hỏi) cho việc thực thi. CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 24 - Sự độc lập giữa thiết bị và vị trí làm cho người dùng có thể truy cập hệ thống bằng cách sử dụng trình duyệt web mà không quan tâm đến vị trí của họ hay thiết bị nào mà họ đang dùng, ví dụ như PC, mobile.

Vì cơ sở hạ tầng off-site (được cung cấp bởi đối tác thứ 3) và được truy cập thông qua Internet, do đó người dùng có thể kết nối từ bất kỳ nơi nào. - Việc cho thuê nhiều để có thể chia sẻ tài nguyên và chi phí giữa một phạm vi lớn người dùng, cho phép: + Tập trung hóa cơ sở hạ tầng trong các lĩnh vực với chi phí thấp hơn (chẳng hạn như bất động sản, điện, v.) + Khả năng chịu tải nâng cao (người dùng không cần kỹ sư cho các mức tải cao nhất có thể). + Cải thiện việc sử dụng và hiệu quả cho các hệ thống mà thường chỉ 10-20% được sử dụng. - Độ tin cậy cải thiện thông qua việc sử dụng các site có nhiều dư thừa, làm nó thích hợp cho tính liên tục trong kinh doanh và khôi phục thất bại.

Tuy nhiên, phần lớn các dịch vụ của cloud computing có những lúc thiếu hụt và người giám đốc kinh doanh, IT phải làm cho nó ít đi. - Tính co giãn linh động (“theo nhu cầu”) cung cấp tài nguyên trên một cơ sở mịn, tự bản thân dịch vụ và gần thời gian thực, không cần người dùng phải có kỹ sư cho chịu tải. Hiệu suất hoạt động được quan sát và các kiến trúc nhất quán, kết nối lỏng lẽo được cấu trúc dùng web service như giao tiếp hệ thống.Việc bảo mật cải thiện nhờ vào tập trung hóa dữ liệu, các tài nguyên chú trọng bảo mật, … nhưng cũng nâng cao mối quan tâm về việc mất quyền điều khiển dữ liệu nhạy cảm. Bảo mật thường thì tốt hay tốt hơn các hệ thống truyền thống, một phần bởi các nhà cung cấp có thể dành nhiều nguồn lực cho việc giải quyết các CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 25 vấn đề bảo mật mà nhiều khách hàng không có đủ chi phí để thực hiện.

Các nhà cung cấp sẽ ghi nhớ (log) các truy cập, nhưng việc truy cập vào chính bản thân các audit log có thể khó khăn hay không thể. - Khả năng chịu đựng xảy ra thông qua việc tận dụng tài nguyên đã được cải thiện, các hệ thống hiệu quả hơn. Tuy nhiên, các máy tính và cơ sở hạ tầng kết hợp là những thứ tiêu thụ năng lượng chủ yếu.4 Các mô hình Cloud Computing - Theo định nghĩa, các nguồn điện toán khổng lồ như phần mềm, dịch vụ. sẽ nằm tại các máy chủ ảo (đám mây) trên Internet thay vì trong máy tính gia đình và văn phòng (trên mặt đất) để mọi người kết nối và sử dụng mỗi khi họ cần.3 Mô hình Cloud Computing.

- Hiện nay, các nhà cung cấp đưa ra nhiều dịch vụ của Cloud Computing theo nhiều hướng khác nhau, đưa ra các chuẩn riêng cũng như cách thức hoạt động khác CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 26 nhau. Do đó, việc tích hợp các Cloud để giải quyết một bài toán lớn của khách hàng vẫn còn là một vấn đề khó khăn. Chính vì vậy, các nhà cung cấp dịch vụ đang có xu hướng tích hợp các Cloud lại với nhau thành “sky computing”, đưa ra các chuẩn chung để giải quyết các bài toán lớn của khách hàng.4 Mô hình tổng quan của Cloud Computing. - Cơ bản Cloud Computing được phân thành hai loại: + Mô hình dịch vụ (Service Models): Phân loại các dịch vụ của các nhà cung cấp dịch vụ Cloud Computing.

+ Mô hình triển khai (Deployment Models): Phân loại cách thức triển khai dịch vụ Cloud Computing đến với khách hàng. CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 27 1.1 Mô hình dịch vụ - Hiện tại có rất nhiều nhà cung cấp dịch vụ Cloud Computing cung cấp nhiều loại dịch vụ khác nhau. Tuy nhiên có ba loại dịch vụ Cloud Computing cơ bản là: dịch vụ cơ sở hạ tầng (Infrastructure as a Service – IaaS), dịch vụ nền tảng (Platform as a Service – PaaS) và dịch vụ phần mềm (Software as a Service – SaaS). Cách phân loại này thường được gọi là “mô hình SPI”.5 Các loại dịch vụ Cloud Computing.

Infrastructure as a Service – IaaS - Trong loại dịch vụ này, khách hàng được cung cấp những tài nguyên máy tính cơ bản (như bộ xử lý, dung lượng lưu trữ, các kết nối mạng…). Khách hàng sẽ cài hệ điều hành, triển khai ứng dụng và có thể nối các thành phần như tường lửa và bộ cân bằng tải. Nhà cung cấp dịch vụ sẽ quản lý cơ sở hạ tầng cơ bản bên dưới, khách hàng sẽ phải quản lý hệ điều hành, lưu trữ, các ứng dụng triển khai trên hệ thống, các kết nối giữa các thành phần. - Những đặc trưng tiêu biểu: + Cung cấp tài nguyên như là dịch vụ: bao gồm cả máy chủ, thiết bị mạng, bộ nhớ, CHƯƠNG 1: TÌM HIỂU CLOUD SERVICES 28 CPU, không gian đĩa cứng, trang thiết bị trung tâm dữ liệu.

+ Khả năng mở rộng linh hoạt + Chi phí thay đổi tùy theo thực tế + Nhiều người thuê có thể cùng dùng chung trên một tài nguyên + Cấp độ doanh nghiệp: đem lại lợi ích cho công ty bởi một nguồn tài nguyên tích toán tổng hợp. Platform as a Service – PaaS - Cung cấp nền tảng tinh toán và một tập các giải pháp nhiều lớp.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ