1. Trang chủ
  2. » Công Nghệ Thông Tin

Xây dựng hệ thống phân phối nội dung số cho nền tảng androido

83 365 0

Đ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 83
Dung lượng 2,47 MB

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

Nội dung

Thành phần thứ hai là client trên android bao gồm các hàm kết nối tương ứng đến server, nhận dữ liệu, thao tác người dùng sau đó gửi yêu cầu đến server, nhận dữ liệu từ server hiển thị t

Trang 1

LỜI CẢM ƠN

Lời đầu tiên, Em xin chân thành cảm ơn trường đại học công nghệ thông tin

và truyền thông, đại học Thái Nguyên đã tạo điều kiện thuận lợi cho phép em thực hiện bài đồ án tốt nghiệp này

Đặc biệt, Em xin chân thành cảm ơn tới Tiến Sĩ Nguyễn Toàn Thắng đã rất tận tình hướng dẫn, chỉ bảo em trong suốt thời gian thực hiện đề tài vừa qua

Em cũng xin chân thành cảm ơn tất cả các Thầy, các Cô trong Trường đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết, quý báu trong những năm tháng học tập tại Trường

Mặc dù em đã cố gắng, nhưng với trình độ còn hạn chế, trong quá trình làm

đồ án tốt nghiệp không tránh khỏi những thiếu sót Em hy vọng sẽ nhận được những ý kiến nhận xét, góp ý của các thầy cô giáo và các bạn về bài đồ án của em

để bài đồ án được hoàn thiện hơn

Em xin trân trọng cảm ơn!

Trang 2

LỜI CAM ĐOAN

Em tên là: Tạ Huy Triệu – sinh viên lớp MMT-K10A, ngành truyền thông

và mạng máy tính, khoa công nghệ thông tin, trường Đại học Công Nghệ Thông Tin và Truyền Thông - Đại học Thái Nguyên, khóa 2011-2016

Em xin cam đoan đã thực hiện quá trình làm đồ án một cách khoa học, chính xác và trung thực

Toàn bộ kết quả của quá trình làm đồ án là thành quả của quá trình học tập, nghiên cứu của em, dưới sự hướng dẫn của Tiến sỹ Nguyễn Toàn Thắng Nội dung trong đồ án nếu có tham khảo, sử dụng tài liệu thông tin từ một số nguồn khác đều được trích dẫn trong phần tài liệu tham khảo

Em xin chịu trách nhiệm toàn bộ trước bài báo cáo của mình!

Trang 3

MỤC LỤC

LỜI CẢM ƠN 1

LỜI CAM ĐOAN 2

MỤC LỤC 3

DANH MỤC BẢNG BIỂU 5

DANH MỤC HÌNH ẢNH 6

TỔNG QUAN ĐỀ TÀI 8

CHƯƠNG I: CƠ SỞ LÝ THUYẾT 11

1.1 Khảo sát 11

1.2 Công nghệ xây dựng server 12

1.3 Công nghệ phát triển ứng dụng android 15

1.3.1 Giới thiệu chung về hệ điều hành android 15

1.3.2 Kiến trúc của android 15

1.3.3 Công nghệ phát triển ứng dụng android 19

1.4 Công nghệ xây dựng web 20

1.5 Công nghệ giao tiếp giữa ứng dụng android và web server 20

CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 24

2.1 Yêu cầu hệ thống 24

2.2 Triển khai hệ thống 24

2.3 Các thành phần hệ thống 25

2.2 Phân tích thiết kế hệ thống 28

2.2.1 Biểu đồ UC 28

2.2.2 Đặc tả UC người dùng 30

2.2.3 Đặc tả UC Admin 33

2.2.4 Đặc tả UC Author 36

2.2.5 Biểu đồ lớp 40

2.2.6 Thiết kế dữ liệu 40

Trang 4

CHƯƠNG III XÂY DỰNG HỆ THỐNG 43

3.1 Xây dựng web server 43

3.1.1 Tạo lớp kết nối tới SQLServer 43

3.1.2 Xây dựng web service 44

3.1.3 Xây dựng web client 45

3.1.4 Xây dựng hàm nén dữ liệu 48

3.2 Xây dựng ứng dụng client trên android 48

3.2.1 Tạo lớp kết nối và truyền dữ liệu với server 48

3.2.2 Tạo hàm giải nén dữ liệu nhận được từ server 49

3.2.3 Xây dựng ứng dụng android 50

CHƯƠNG IV : ỨNG DỤNG DEMO 52

4.1 Web server 52

4.2 Ứng dụng client trên android 54

4.3 Ứng dụng web client 57

KẾT LUẬN 59

TÀI LIỆU THAM KHẢO 60

Trang 5

DANH MỤC BẢNG BIỂU

Bảng 2.1: Mối quan hệ giữa tác nhân và UC 28

Bảng 2.2: Luồng sự kiện chính UC đăng nhập 30

Bảng 2.3: Luồng sự kiện chính UC lấy danh sách tài nguyên 31

Bảng 2.4: Luồng sự kiện chính UC quản lý thông tin người dùng 32

Bảng 2.5: Luồng sự kiện chính UC Quản lý tài nguyên 33

Bảng 2.6: Luồng sự kiện chính UC Quản lý người dùng 34

Bảng 2.7: Luồng dữ liệu chính UC Quản lý thể loại 35

Bảng 2.8: Luồng sự kiện chính UC quản lý Album 36

Bảng 2.9: Luồng sự kiện chính UC quản lý tài nguyên 37

Bảng 2.10: Luồng dữ liệu chính UC Quản lý album 38

Bảng 2.11: Luồng sự kiện chính UC quản lý thông tin tác giả 39

Trang 6

DANH MỤC HÌNH ẢNH

Hình 1.1: Các ứng dụng phân phối nội dung âm thanh 11

Hình 1.2: Mô hình web server 13

Hình 1.3: Cấu trúc stack hệ thống Android 15

Hình 2.1: Biểu đồ triển khai hệ thống 24

Hình 2.2: Các thành phần của hệ thống 25

Hình 2.3: Biểu đồ UC người dùng 29

Hình 2.4: Biểu đồ UC người quản trị 29

Hình 2.5: Biểu đồ UC tác giả 29

Hình 2.6: Biểu đồ luồng trình tự UC đăng nhập 30

Hình 2.7: Biểu đồ trình tự UC View Source 31

Hình 2.8: Biểu đồ trình tự UC quản lý thông tin người dùng 32

Hình 2.9: Luồng sự kiện chính UC quản lý tài nguyên của admin 33

Hình 2.10: Luồng sự kiện chính UC quản lý người dùng 34

Hình 2.11: Luồng sự kiện chính UC quản lý thể loại của admin 35

Hinh 2.12: Luồng sự kiện chính UC quản lý album của admin 36

Hình 2.13: Biểu đồ trình tự UC quản lý tài nguyên của author 37

Hình 2.14: Luồng sự kiện chính UC quản lý album của author 38

Hình 2.15: Luồng sự kiện chính UC quản lý thông tin tác giả 39

Hình 2.16: Biểu đồ lớp 40

Hình 2.17: Biểu đồ thiết kế cơ sở dữ liệu 40

Hình 3.1: Chọn SQLServer cần kết nối và cơ sở dữ liệu cần sử dụng 43

Hình 3.2: Khởi tạo lớp kết nối sử dụng LINQ 44

Hình 3.3: Các API server cung cấp cho Android client 45

Hình 3.4 : Tạo website trên visual studio 45

Hình 3.5: Các controller của hệ thống website 46

Trang 7

Hình 3.6: Các model của hệ thống 47

Hình 3.7: Các thư mục view của hệ thống website 47

Hình 3.8: Sử dụng thư viện ICSharpCode.SharpZipLib.dll 48

Hình 3.9: Lớp MyKsoap 49

Hình 3.10: Hàm giải nén dữ liệu trên ứng dụng client android 50

Hình 3.11: Thiết kế giao diện ứng dụng client 51

Hình 4.1 : Hình ảnh web server cài đặt thành công 52

Hình 4.2 : Form nhập dữ liệu mà web service tự tạo 53

Hình 4.3: Giao diện chính ứng dụng client trên android 54

Hình 4.4: Danh sách các Singer, Album, Category 55

Hình 4.5: Danh sách tài nguyên được theo những điều kiện khác nhau 55

Hình 4.6: Cấu hình địa chỉ ip server cho ứng dụng client 56

Hình 4.7: Giao diện trang web của admin và author khi đăng nhập vào 57

Hình 4.8: Một số giao diện khác 58

Trang 8

TỔNG QUAN ĐỀ TÀI

Lý do chọn đề tài

Ngày nay thiết bị di động không chỉ là thiết bị đàm thoại thông thường mà đang dần trở thành thiết bị thông minh để đáp ứng nhu cầu ngày càng cao của con người Sự phát triển của công nghệ, giá cả điện thoại cũng ngày càng rẻ hơn là các yếu tố khiến điện thoại thông minh ngày càng trở nên phổ biến Việc sử dụng điện thoại di động để trao đổi, lưu trữ các tài nguyên số đang trở nên thông dụng Vì vậy mà các vấn đề liên quan đến bảo mật, bảo vệ các dữ liệu nội dung số trên mạng như: mp3, video, ảnh, file văn bản, … ngày càng trở nên cấp thiết và quan trọng

Hiện nay, trên mạng có rất nhiều ứng dụng chia sẻ, phân phối nội dung số khác nhau trên nền tảng android Một số ứng dụng chia sẻ và phân phối như ZingMp3, nhaccuatui,… đã thành công trong việc chia sẻ nội dung số trên nền tảng android Tuy nhiên việc bảo vệ những dữ liệu chia sẻ, phân phối này trên môi trường mạng cũng như thiết bị là chưa có Việc xây dựng một ứng dụng đáp ứng được việc bảo vệ các tài nguyên số ngày trên môi trường mạng cũng như thiết bị là cần thiết

Vì vậy, với các vấn đề đưa ra ở trên, em đã đi đến việc tìm hiểu và thực

hiện đề tài: Xây dụng hệ thống phân phối nội dung số cho nền tảng android có

sử dụng các biện pháp bảo vệ dữ liệu trên môi trường mạng và thiết bị.

Ý tưởng xây dựng hệ thống

Với đề tài như trên hệ thống xây dụng gồm ba phần Phần thứ nhất là server dùng để quản lý lưu trữ các tài nguyên số, cung cấp các hàm chức năng kết nối và giao tiếp với client, đồng thời tiến hành mã hóa các tài nguyên số thành một dạng khác và gửi về cho client khi có yêu cầu Thành phần thứ hai là client trên android bao gồm các hàm kết nối tương ứng đến server, nhận dữ liệu, thao tác người dùng sau đó gửi yêu cầu đến server, nhận dữ liệu từ server hiển thị thông tin cho người

Trang 9

dùng, đồng thời tải về các tài nguyên đã được mã hóa từ server khi có yêu cầu và giải mã dữ liệu về dữ liệu gốc để người dùng sử dụng Thành phần thứ ba là web client bao gồm giao diện web trên một phần mềm web browser bất kỳ Thành phần này sẽ cung cấp các chức năng cho người quản trị và người quản lý nội dung các chức năng để tương tác với cơ sở dữ liệu Đây là thành phần quan trọng cho phép người quản trị quản lý hệ thống với giao diện trực quan dễ thao tác, cho phép người quản lý nội dung quản lý nội dung chia sẻ của mình đồng thời đăng tải những nội dung cần chia sẻ trên một giao diện web thân thiện dễ sử dụng

Với ý tưởng như trên hệ thống được xây dựng sẽ đảm bảo việc chia sẻ cũng như quản lý của người có nhu cầu chia sẻ nội dung số của mình, nội dung chia sẻ

sẽ đến được với người dùng Đồng thời hệ thống sẽ cho phép người dùng có thể truy cập và xem những nội dung đã được chia sẻ theo đúng quyền hạn của mình Ngoài ra hệ thống sẽ giúp người quản trị đảm bảo việc hoạt động ổn định của hệ thống Thêm nữa hệ thống sẽ đáp ứng được việc dữ liệu truyền thông trên mạng được bảo vệ, không bị đánh cắp bên cạnh đó dữ liệu trên thiết bị cũng được bảo vệ

Phạm vi đề tài

Trong phạm vi bài đồ án tốt nghiệp của mình em xin demo thực hiện xây dựng hệ thống thực hiện việc phân phối một dạng tài nguyên số phổ biến hiện nay

là nội dung nhạc mp3, hình ảnh jpg và video mp4

Mục tiêu của đề tài

Mục tiêu của đề tài là giải quyết các vấn đề sau:

+ Xây dựng web server và các dịch vụ cho web server

+ Xây dựng ứng dụng trên android sử dụng các dịch vụ được cung cấp từ server

+ Xây dụng web client sử dụng MVC

+ Nén các tệp tin tài nguyên trên server khi người cung cấp nội dung tải lên server bằng web client

Trang 10

+ Giải nén tệp tin nhận được từ server trên android

+ Kết nối và truyền dữ liệu giữa client và server

Trong quá trình trình thực hiện còn nhiều thiếu sót, không thể tránh khỏi những sai lầm trong phân tích thiết kế và những lỗi cài đặt chương trình Vì vậy

em mong nhận được sự ủng hộ đóng góp ý kiến của các thầy cô để bài thực tập tốt nghiệp của em được hoàn thiện hơn và em mong được lĩnh hội những kiến thức hay bổ ích từ thầy cô

Em xin chân trình cảm ơn!

Trang 11

CHƯƠNG I: CƠ SỞ LÝ THUYẾT 1.1 Khảo sát

Trên thị trường hiện nay tồn tại một số hệ thống phân phối nội dung số dạng nội dung âm thanh mp3 như ZingMp3, nhaccuatui, v.v…

+ ZingMp3: ZingMp3 là một ứng dụng trên di động của một trong những trang web chia sẻ nhạc trực tuyến lớn nhất Việt Nam Đây là một ứng dụng rất thành công với những ưu điểm nổi bật như: nội dung số phong phú, tốc độ nhanh,

dễ thực hiện và xử lý và quản lý nội dung dễ dàng

+ Nhaccuatui: Nhaccuatui cũng là một ứng dụng trên di động của một trang web chia sẻ nhạc trực tuyến vào hạng nhất nhì Việt Nam Đây là ứng dụng khá thành công khi đem lại cho người dùng những thuận lợi trong việc sử dụng ứng dụng như: đa dạng về nội dung, chia sẻ dễ dàng, quản lý đơn giản, xử lý nhanh, tốc

độ cao

Trang 12

Hình 1.1: Các ứng dụng phân phối nội dung âm thanh

+ Tuy nhiên cả hai ứng dụng trên là nội dung số của ứng dụng này có thể được thực thi trên ứng dụng còn lại, dữ liệu vẫn còn ở dạng nguyên gốc Vấn đề về việc bảo vệ dữ liệu trên từng thiết bị là chưa có Nội dung số được truyền đi trên mạng vẫn là nội dung gốc, không có một biện pháp bảo vệ dữ liệu vì vậy mà người khác có thể bắt được các gói tin và có được dữ liệu gốc ban đầu

+ Vì vậy một hệ thống mới cần được xây dựng để đáp ứng những yêu cầu

về việc đảm bảo dữ liệu truyền đi trên mạng không cho người thứ ba không có quyền truy cập có thể hiểu nội dung bản tin, dữ liệu lưu trữ trên thiết bị cá nhân cũng không thể thực hiện bởi một ứng dụng khác Hệ thống mới cần đáp ứng các

Trang 13

yêu cầu cơ bản như:

Dữ liệu tài nguyên lưu trữ trên server phải được nén với một mã nhất định nào đó mà chỉ web server và ứng dụng client có thể hiểu được

Ứng dụng client và server phải được kết nối và truyền thông được với nhau

Dữ liệu tài nguyên nhận được trên client phải được giải nén để có được dữ liệu gốc ban đầu và hiển thị theo từng dạng dữ liệu cho người dùng

1.2 Công nghệ xây dựng server

Web server là một dịch vụ công nghệ thông tin xử lý các yêu cầu thông qua HTTP, các giao thức mạng cơ bản khác để phân phối thông tin trên world wide web Các chức năng chính của web server là để lưu trữ, xử lý và cung cấp các trang web cho người dùng Những dạng dữ liệu thường xuyên truyền tải giữa một web server với một ứng dụng client là các trang tài liệu HTML có thể bao gồm hình ảnh, kịch bản, file khác Ứng dụng client có thể là một trình duyệt web, một ứng dụng có thể đọc và truy xuất đến web server Ứng dụng client truy cập đến server bằng cách thực hiện một yêu cầu một tài nguyên nào đó trên server bằng cách sử dụng HTTP, khi server nhận được yêu cầu sẽ thực hiện xử lý yêu cầu và đáp ứng nội dung tài nguyên cần yêu cầu(nếu có) cho client

Trang 14

Hình 1.2: Mô hình web server

Hiện nay có nhiều cách để xây dựng và chạy một web server được phân loại bằng ngôn ngữ sử dụng, xử lý trên web server bao gồm:

+ Web server PHP sử dụng ngôn ngữ lập trình PHP để xử lý các yêu cầu từ client và MySQL để lưu trữ cơ sở dữ liệu Ưu điểm của web server PHP là: Sử dụng ngôn ngữ lập trình PHP là một ngôn ngữ mã nguồn mở, rất phổ biến và dễ dàng viết mã Bên cạnh đó là sử dụng hệ quản trị cơ sở dữ liệu MySQL là một quản trị cơ sở dữ liệu dễ quản lý, tốc độ xử lý cao và dễ dàng sử dụng Tuy nhiên còn một số những nhược điểm của Web server PHP như: PHP là một ngôn ngữ dạng yếu và chỉ chạy được trên ứng dụng web Hệ quản trị cơ sở dữ liệu MySQL bảo mật chưa cao, quán trình phục hồi chậm chạp, không hỗ trợ truy vấn con và các thủ tục lưu trữ, bẫy lỗi, …

+ Web server Java sử dụng ngôn ngữ java để xử lý các yêu cầu từ client và

Trang 15

Oracle Database để lưu trữ cơ sở dữ liệu Ưu điểm của web server Java là: sử dụng ngôn ngữ lập trình Java là một ngôn ngữ mã nguồn mở, rõ ràng và tách biệt, dễ dàng viết mã, ngôn ngữ hướng đối tượng rõ ràng, nhiều thư viên hỗ trợ lập trình

Hệ quản trị cơ sở dữ liệu sử dụng là Oracle Database là một hệ quản trị cơ sở dữ liệu lớn, được tích hợp các công cụ quản trị, tính bảo mật cao và thời gian đáp ứng nhanh Ngoài những ưu điểm trên thì Web server Java cũng có những nhược điểm như: ngôn ngữ lập trình java còn chập chạp, cần phải cấu hình nhiều để có thể chạy tốt, hệ quản trị cơ sở dữ liệu Oracle chưa được phổ biến, phí bản quyền tương đối cao, không tương thích với các công nghệ của Microsoft

+ Web server Net sử dụng ngôn ngữ lập trình C# để xử lý các yêu cầu từ client và SQLServer để lưu trữ cơ sở dữ liệu Ưu điểm của web sercer Net là: sử dụng ngôn ngữ lập trình C# là ngôn ngữ lập trình đơn giản hướng đối tượng, rõ ràng, tách biệt, mạnh mẽ, dễ dàng viết mã, nhiều thư viện hỗ trợ lập trình Hệ quản trị cơ sở dữ liệu hay được sử dụng là SQLServer là một hệ quản trị cơ sở dữ liệu lớn, mạnh mẽ, cấu trúc chặt chẽ, duy nhất, tính bảo mật cao, dễ dàng sử dụng Web server Net còn có một số nhược điểm như: ngôn ngữ C# chỉ hỗ trợ trên môi trường windown, SQLServer bảo mật cao nên phải cấu hình chính sác mới có thể

sử dụng

Từ những ưu điểm và nhược điểm kể trên của ba cách xây dựng web server

em chọn cách xây dựng web server trên nền ASP.Net sử dụng ngôn ngữ lập trình C# để viết mã và hệ quản trị cơ sở dữ liệu SQLServer 2005 để lưu trữ dữ liệu

+ Để thực hiện các truy vấn cơ sở dữ liệu trong SQLServer để xử lý và gửi phản hổi cho client em sử dụng cộng nghệ LINQ LINQ (Language Integrated Query) là một thư viện cung cấp cho ngôn ngữ lập trình C# và Visual Basi Thư viện này cung cấp khả năng truy vấn database ngay trên ngôn ngữ lập trình Khi sử dụng, LinQ sẽ mô phỏng lại cơ sở dữ liệu của bạn và lưu trong trương trình, sau đó mỗi thực thể sẽ được xây dựng thành mỗi class như mô hình MVC, từ đó ta có thể truy xuất database thông qua những class đó LINQ có thể viết truy vấn cơ sở dữ

Trang 16

liệu cho rất nhiều các đối tượng, thực thể dữ liệu từ database Công nghệ này giúp giảm gánh nặng thao tác trên nhiều ngôn ngữ lập trình và cải thiện năng suất lập trình LINQ to SQL là một phiên bản hiện thực hóa của O/RM (object relational mapping) có bên trong NET Framework 3.5, nó cho phép mô hình hóa một cơ sở

dữ liệu dùng các lớp NET LINQ to SQL hỗ trợ đầy đủ transaction, view và các stored procedure (SP) Nó cũng cung cấp một cách dễ dàng để thêm khả năng kiểm tra tính hợp lệ của dữ liệu và các quy tắc vào trong mô hình dữ liệu của bạn

1.3 Công nghệ phát triển ứng dụng android

1.3.1 Giới thiệu chung về hệ điều hành android

Android là một nền tảng mã nguồn mở toàn diện được thiết kế cho các thiết

bị di động Nó là sự liên minh giữa ông lớn Google và Open Handset Alliance –các tập đoàn sản xuất thiết bị cầm tay nổi tiếng như Intel, SamSung, Toshiba… Với mục tiêu là tăng tốc việc đổi mới trong di động và cung cấp cho người tiêu dung nhiều tiện ích phong phú, ít tốn kém Android chính là công cụ để làm điều đó

Android là một nền tảng mã nguồn mở, toàn bộ ngăn xếp từ các module cấp thấp của Linux đến tất cả các thư viện gốc và tử các ứng dụng khung cho đến các ứng dụng hoàn chỉnh là hoàn toàn mở

Trong lịch sử phát triển, ban đầu Android thuộc sở hữu của công ty Android Inc Sau đó được Google mua lại vào năm 2005 và bắt đầu xây dựng Android Platform Cuối năm 2007 liên minh Open HandsetAlliance được thành lập và được công bố, Android chính thức trở thành mã nguồn mở Phiên bản đầu tiên được phát hành vào tháng 11 năm 2007

1.3.2 Kiến trúc của android

Trang 17

Hình

1.3: Cấu trúc stack hệ thống Android

Trang 18

a, Tầng ứng dụng

Đây là lớp ứng dụng giao tiếp với người dùng, bao gồm các ứng dụng như:

Các ứng dụng cơ bản được cài đặt đi liền với hệ điều hành như: gọi điện thoại (phone), quản lý danh bạ (contacts), duyệt web (browser), nhắn tin (sms), lịch làm việc (calendar), đọc email (email-client), bản đồ (map), quay phim chụp ảnh (camera)…

Các ứng dụng được cài thêm như các phần mềm (stock), các trò chơi (game), từ điển, …

Các chương trình có các đặc điểm là:

+ Viết bằng Java, phần mở rộng là apk

+ Khi mỗi ứng dụng được chạy, nó có phiên bản Virtual Machine được dựng lên phục vụ cho nó Nó có thể là một Active Program: chương trình có giao diện với người sử dụng hoặc là một background: chương trình chạy nền hay là dịch vụ

+ Android là hệ điều hành đa nhiệm, điều đó có nghĩa là trong cùng một thời điểm, có thể có nhiều chương trình chạy một lúc, tuy nhiên, với mỗi ứng dụng thì có duy nhất một thực thể (instance) được phép chạy mà thôi Điều đó có tác dụng hạn chế sự lạm dụng tài nguyên, giúp hệ thống hoạt động tốt hơn

+ Các ứng dụng được gán số ID của người sử dụng nhằm phân định quyền hạn khi sử dụng tài nguyên, cấu hình phần cứng và hệ thống

Android là một hệ điều hành có tính mở, khác với nhiều hệ điều hành di động khác, android cho phép một ứng dụng của bên thứ ba được phép chạy nền

b, Application framework

Tầng này xây dựng bộ công cụ - các phần tử ở mức cao để các lập trình viên có thể nhanh chóng xây dựng ứng dụng Nó được viết bằng Java, có khả năng sử dụng chung để tiết kiệm tài nguyên

Gồm các thành phần:

Trang 19

+ Activity Manager: Quản lý các chu kỳ sống của một ứng dụng cũng như

cung cấp các công cụ điều khiển Activity

+ Telephony Manager: Cung cấp công cụ để thực hiện việc liên lạc như

gọi điện thoại

+ XMPP Service: Cung cấp công cụ để liên lạc trong thời gian thực.

+ Location Manager: Cho phép xác định vị trí của điện thoại dựa vào hệ

thống định vị toàn cầu GPS và Google Maps

+ Window Manager: Quản lý việc xây dựng và hiển thị các giao diện

người dùng cũng như tổ chức quản lý các giao diện giữa các ứng dụng

+ Notication Manager: Quản lý việc hiển thị các thông báo ( như báo có

tin nhắn,có email mới….)

c, Library

Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều thành phần khác nhau trong hệ thống Android Điều này được thể hiện thông qua nền tảng ứng dụng Android Một số các thư viện cơ bản gồm:

+ Hệ thống thư viện C : triển khai BSD-derived có nguồn gốc từ các hệ

thống thư viện chuẩn C (libc), được sử dụng chỉ bởi hệ điều hành

+ Media Libraries – Dựa trên gói Video OpenCORE; các thư viện hỗ trợ

phát và ghi âm của các định dạng âm thanh và video phổ biến, cũng như các file hình ảnh tĩnh, bao gồm MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG

+ Surface Manager – Quản lý việc truy xuất vào hệ thống hiển thị

+ LibWebCore - Đây là thành phần để xem nội dung trên web, được

sử dụng để xây dựng phần mềm duyệt web (Android Browse) cũng như để các ứng dụng khác có thể nhúng vào Nó cực kỳ mạnh, hỗ trợ được nhiều công nghệ mạnh mẽ như HTML5, JavaScript, CSS, DOM, AJAX

+ SGL – Các cơ sở công cụ đồ họa 2D.

+ 3D libraries - Thực hiện dựa trên OpenGL ES 1.0 APIs; Thư viện sử dụng

hoặc là tăng tốc phần cứng 3D (nếu có) hoặc bao gồm tối ưu hóa phần mềm 3D

Trang 20

+ SQLite - Hệ cơ sở dữ liệu để các ứng dụng có thể sử dụng

d, Android Runtime

Phần này chứa các thư viện mà một chương trình viết bằng ngôn ngữ Java

có thể hoạt động Phần này có 2 bộ phận tương tự như mô hình chạy Java trên máy tính thường Thứ nhất là các thư viện lõi (Core Library) , chứa các lớp như JAVA IO, Collections, File Access Thứ hai là một máy ảo java (Dalvik Virtual Machine) Mặc dù cũng được viết từ ngôn ngữ Java nhưng một ứng dụng Java của hệ điều hành android không được chạy bằng JRE của Sun (nay là Oracle) (JVM) mà là chạy bằng máy ảo Dalvik do Google phát triển

e, Linux kernel

Hệ điều hành android được phát trển dựa trên hạt nhân linux, cụ thể là hạt nhân linux phiên bản 2.6, điều đó được thể hiện ở lớp dưới cùng này Tất cả mọi hoạt động của điện thoại muốn thi hành được thì đều được thực hiện ở mức cấp thấp ở lớp này bao gồm quản lý bộ nhớ (memory management), giao tiếp với phần cứng (driver model), thực hiện bảo mật (security), quản lý tiến trình (process)

Tầng này có các thành phần chủ yếu :

+ Display Driver: Điều khiển việc hiển thị lên màn hình cũng như thu

nhận những điều khiển của người dùng lên màn hình (di chuyển, cảm ứng )

+ Camera Driver: Điều kiển hoạt động của camera, nhận luồng dữ liệu từ

camera trả về

+ Bluetooth Driver: Điều khiển thiết bị phát và thu sóng Bluetooth.

+ USB driver: Quản lý hoạt động của các cổng giao tiếp USB

+ Keypad driver: Điều khiển bàn phím

+ Wifi Driver: Chịu trách nhiệm về việc thu phát sóng wifi

+ Audio Driver: điều khiển các bộ thu phát âm thanh, giải mã các tính

hiệu dạng audio thành tín hiệu số và ngược lại

+ Binder IPC Driver: Chịu trách nhiệm về việc kết nối và liên lạc với

Trang 21

mạng vô tuyến như CDMA, GSM, 3G, 4G, E để đảm bảo những chức năng truyền thông được thực hiện.

+ M-System Driver : Quản lý việc đọc ghi lên các thiết bị nhớ như thẻ

SD, flash

+ Power Madagement : Giám sát việc tiêu thụ điện năng.

1.3.3 Công nghệ phát triển ứng dụng android

Hiện nay, trên thực tế tồn tại ba công nghệ phát triển ứng dụng cho hệ điều hành android gồm: sử dụng java thuần túy để phát triển ứng dụng, sử dụng C++ để phát triển ứng dụng game, sử dụng công nghệ Cross platform hoặc Hybrid để viết ứng dựng từ một ngôn ngữ có thể chạy trên nhiều nền tảng hệ điều hành khách nhau

+ Sử dụng java thuần để phát triển ứng dụng android là công nghệ viết ứng dụng cơ bản và được google khuyên sử dụng Vì đây là nền tảng cơ bản của android, việc biên dịch để thực thi ứng dụng trên hệ điều hành android đã được tích hợp và tương thích trong các phần mềm lập trình Đa số các ứng dụng trên android hiện nay đều được viết từ nền tảng này Ngoài ra nền tảng này còn được google và các nhà phát triển ứng dụng liên tục cập nhật những bộ thư viện mới hỗ trợ người lập trình rất tốt Những phần mềm sử dụng nền tảng công nghệ này như: Android Studio, Elclipse,…

+ Sử dụng C++ để phát triển ứng dụng game là công nghệ tận dụng tốc độ

xử lý nhanh và tối ưu bộ nhớ của ngôn ngữ C++ để phát triển các ứng dụng game Với công nghệ này người lập trình sẽ viết mã trên C++ sau đó sử dụng công cụ NDK để chuyển đổi mã sang java để chạy trên hệ điều hành android

+ Sử dụng công nghệ Cross platform hoặc Hybrid là một cách tiếp cận mới cho các ứng dụng trên di động Với công nghệ này, ứng dụng chỉ cần viết một lần

có thể chạy được trên nhiều hệ điều hành khác nhau Công nghệ này sử dụng một

số ngôn ngữ như js (HTML5), C#(unity,xamarin) …

Cùng với sự tìm hiểu và những hiểu biết của mình về các công nghệ phát

Trang 22

triển ứng dụng cho android thì em lựa chọn công nghệ sử dụng java thuần để phát triển ứng dụng trên android của đề tài Vì đây là nền tảng được hỗ trợ rất nhiều từ google nhất là từ khi phần mềm lập trình Android Studio của hãng được phát hành Bên cạnh đó thư viện hỗ trợ được viết bởi các hãng cũng khá phong phú và tiện dụng Tài liệu hướng dẫn sử dụng và học tập trên nền tảng này cũng rất nhiều.

Trang 23

1.4 Công nghệ xây dựng web

Hiện nay trên thị trường có rất nhiều công nghệ để xây dựng một trang web

từ đơn giản đến phức tạp nhất có thể kể đến như: sử dụng html và css thuần, sử dụng php thuần, MVC, wordpress, …

ASP.NET MVC là công nghệ sau ASP.NET Web Form cho phép ta phát triển ứng web gồm ba thành phần chính: model, view và controller Với ưu điểm nổi bật là nhẹ hơn (lighweigt), dễ kiểm thử giao diện và thừa hưởng các tính năng

có sẵn của ASP.NET đã khiến cho công nghệ này ngày càng phát triển (hiện nay

đã đến phiên bản MVC 5.2) Về bản chất thì đây là phần mở rộng của namespace System.Web được đặt trong namespace System.Web.Mvc

Mô hình MVC giúp bạn tạo được các ứng dụng phân tách rạch ròi các khía cạnh (logic về nhập liệu, logic xử lý tác vụ và logic về giao diện) Mô hình MVC chỉ ra mỗi loại logic kể trên nên được thiếp lập ở đâu trên ứng dụng Logic giao diện (UI logic) thuộc về views Logic nhập liệu (input logic) thuộc về controller

Và logic tác vụ (Business logic – là logic xử lý thông tin, mục đích chính của ứng dụng) thuộc về model Sự phân chia này giúp bạn giảm bớt được sự phức tạp của ứng dụng và chỉ tập trung vào mỗi khía cạnh cần được cài đặt ở mỗi thời điểm

Mô hình MVC giúp thực hiện dự án một cách dể dàng và nhanh chóng, trong lúc HTML designer thiết kế giao diện ở tần view thì hai lập trình viên còn lại

sẻ đảm nhận logic ở tầng controller và các tác vụ ở tầng model

1.5 Công nghệ giao tiếp giữa ứng dụng android và web server

Đề tài thực hiện của em gồm hai thành phần chính là server và client trên android vì vậy mà vấn đề làm sao để ứng dụng android có thể hiểu và giao tiếp qua lại với web server là một trong những vẫn đề then chốt của đề tài Công nghệ thông dụng, phổ biến và dễ dàng để kết nối truyền thông giữa client và server là HTTP (Hypertext Transfer Protocol) Đây là giao thức chạy trên nền web dùng để truyền tải nội dung giữa web server và client Cơ chế hoạt động chính của HTTP là

Trang 24

Requet và Response Client gửi Request đến cho server, server xử lý và trả về Response cho client Giao thức này sẽ đảm bảo vấn đề kết nối của ứng dụng client android với web server Vấn đề làm sao để client và server hiểu nhau thì hiện nay

có một số công nghệ hỗ trợ vấn đề này như: JSON, SOAP, WSDL,

+ JSON: JSON (JavaScript Object Noattion) là một định dạng hoán vị dữ liệu nhanh Chúng dễ dàng cho chúng ta đọc và viết Dễ dàng cho thiết bị phân tích

và phát sinh Chúng là cơ sở dựa trên tập hợp của Ngôn Ngữ Lập Trình JavaScript, tiêu chuẩn ECMA-262 phiên bản 3 - tháng 12 năm 1999 JSON là một định dạng kiểu text mà hoàn toàn độc lập với các ngôn ngữ hoàn chỉnh, thuộc họ hàng với các ngôn ngữ họ hàng C, gồm có C, C++, C#, Java, JavaScript, Perl, Python, và nhiều ngôn ngữ khác Những đặc tính đó đã tạo nên JSON một ngôn ngữ hoán vị

dữ liệu lý tưởng JSON có định dạng đơn giản, dễ dàng sử dụng và truy vấn hơn XML rất nhiều nên tính ứng dụng của nó hiện nay rất là phổ biến, theo tôi thì trong tương lai tới trong các ứng dụng sẽ sử dụng nó là đa số JSON được xây dựng trên

2 cấu trúc:

Là tập hợp của các cặp tên và giá trị name-value Trong những ngôn ngữ khác nhau, đây được nhận thấy như là một đối tượng (object), bản ghi (record), cấu trúc (struct), từ điển (dictionary), bảng băm (hash table), danh sách khoá (keyed list), hay mảng liên hợp

Là một tập hợp các giá trị đã được sắp xếp Trong hầu hết các ngôn ngữ, thì được nhận thấy như là một mảng, véc tơ, tập hợp hay là một dãy sequence

Đây là một cấu trúc dữ liệu phổ dụng Hầu như tất cả các ngôn ngữ lập trình hiện đại đều hổ trợ chúng trong một hình thức nào đó

Trang 25

"title" : "Chia sẻ để cuộc sống tốt đẹp hơn"

}

+ SOAP: SOAP (Simple Object Access Protocol) là một tiêu chuẩn của W3C, là giao thức sử dụng XML để định nghĩa dữ liệu dạng thuần văn bản (plain text) thông qua HTTP SOAP là cách mà Web Service sử dụng để truyền tải dữ liệu Vì dựa trên XML nên SOAP là một giao thức không phụ thuộc platform cũng như bất kì ngôn ngữ lập trình nào Một thông điệp SOAP được chia thành hai phần

là header và body Phần header chỉ ra địa chỉ Web Service, host, Content-Type, Content-Length tương tự như một thông điệp HTTP Phần body chứa nội dung của thông điện SOAP

SOAP cung cấp một cơ chế đơn giản và gọn nhẹ cho việc trao đổi thông tin

có cấu trúc và định dạng giữa các thành phần trong một môi trường phân tán sử dụng XML SOAP được thiết kế dựa trên những chuẩn nhằm giảm chi phí tích hợp các hệ thống phân tán xây dựng trên nhiều nền tảng khác nhau ở mức càng thấp càng tốt

Ví dụ:

<ArrayOfString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

+ WSDL: WSDL (Web Services Description Language) là ngôn ngữ được

sử dụng để mô tả đầy đủ về Web Service theo chuẩn XML như các phương thức, kiểu dữ liệu,… dựa trên XML schema

Ví dụ: Một đoạn định nghĩa kiểu dữ liệu của WSDL cho phương thức HelloWorld()

Trang 26

dữ liệu dùng để response được đặt tên “HelloWorldResponse”.

Với phạm vi đề tài và sự giúp đỡ của thư viện Ksoap2 trên android thì đề tài

em sẽ sử dụng giao thức SOAP để giao tiếp giữa android client và web server Vì SOAP hỗ trợ tốt trên cả android và web server, và nó là một giao thức không phụ thuộc vào ngôn ngữ lập trình cụ thể nào Bên cạnh đó SOAP có câu trúc thẻ XML đơn giản dễ hiểu và sử dụng

Trang 27

CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2.1 Yêu cầu hệ thống

Hệ thống xây dựng ra cần có những yêu cầu sau:

+ Xây dựng web server và các dịch vụ cho web server

+ Xây dựng ứng dụng trên android sử dụng các dịch vụ được cung cấp từ server

+ Xây dụng web client sử dụng MVC

+ Nén các tệp tin tài nguyên trên server khi người cung cấp nội dung tải lên server bằng web client

+ Giải nén tệp tin nhận được từ server trên android

+ Kết nối và truyền dữ liệu giữa client và server

2.2 Triển khai hệ thống

Trang 28

Hình 2.1: Biểu đồ triển khai hệ thống

Hệ thống được thiết kế gồm ba thành phần server, client trên android và web client kết nối trực tiếp với nhau để trao đổi thông tin thông qua giao thức HTTP

+ Thành phần web server: Web Server sẽ cung cấp các khả năng lưu trữ cơ

sở dữ liệu, các loại tài nguyên, tiếp nhận các yêu cầu từ client và phản hồi lại thông tin cần thiết dựa vào yêu cầu của client, cơ sở dữ liệu và tài nguyên hệ thống Bên cạnh đó Web Server sẽ thực hiện nén các tài nguyên khi có tài nguyên mới được them vào hệ thống

+ Thành phần client android: Thành phần này cung cấp giao diện xử lý người dùng, tiếp nhận các yêu cầu của người dùng, kết nối đến server, nhận dữ liệu

Trang 29

từ server và hiển thị trực quan lên giao diện người dung Đồng thời android sẽ giải nén dữ liệu tệp nhận được từ web server để thực thi tài nguyên

+ Web client: Đây là thành phần sử dụng một web browser bất kỳ để thực hiện các truy vấn và hiển thị nội dung truy vấn Thành phần này có thể là chrome, coccoc,… Tất cả các yêu cầu từ thành phần này sẽ được gửi đến MVC và xử lý trả

về dữ liệu để hiển thị lên giao diện

2.3 Các thành phần hệ thống

Hình 2.2: Các thành phần của hệ thống

Hệ thống khi xây dựng sẽ bao gồm các thành phần: Database, LINQ, Webservice, SOAP, MyKsoap, Android System, Unzip File, MVC, Web Client,

Trang 30

File System, Zip File.

+ Database: Database là bộ phận lưu trữ toàn bộ cơ sở dữ liệu của hệ thống dưới dạng bảng Trong hệ thống này chúng ta sử dụng hệ quản trị cơ sở dữ liệu SQLServer để quản trị dữ liệu Bộ phận này cung cấp các hàm truy vấn dữ liệu từ các bảng, trả về dữ liệu phù hợp có trong cơ sở dữ liệu của nó Dữ liệu đầu vào của bộ phận này là các câu truy vấn dữ liệu được ánh xạ từ bộ phận LINQ, kết quả truy vấn sẽ được trả về cho LINQ ở dạng bảng dữ liệu thỏa mãn

+ LINQ: LINQ là bộ phận chứa các liên kết đến SQLServer Bộ phận này đóng vai trò kết nối đến SQLServer, thực hiện các truy vấn để lấy về dữ liệu cần thiết Dữ liệu đầu vào của bộ phận này là các câu truy vấn được yêu cầu từ bộ phận web service hoặc MVC sau đó thực hiện truy vấn đến cơ sở dữ liệu và trả về dữ liệu mong muốn cho web service hoặc MVC xử lý tiếp

+ Webservice: Web service là bộ phận chứa các hàm chức năng của server, những hàm này sẽ mô tả chi tiết những dữ liệu nào mà server có thể tiếp nhận từ client android thông qua tên hàm hoặc dữ liệu nào mà server phản hổi lại cho client android thông qua tên hàm đó Bộ phận này sẽ nhận dữ liệu từ bộ phận SOAP sau đó xử lý dữ liệu, kiểm tra yêu cầu và gửi đến bộ phận LINQ để truy vấn

cơ sở dữ liệu Sau khi nhận được dữ liệu từ các truy vấn đến bộ phận LINQ dữ liệu

sẽ được xử lý và gửi trả lại bộ phận SOAP thông qua tên hàm Bộ phận này bộ phận quan trọng của hệ thống, tại đây tất cả dữ liệu trao đổi giữa client android và server đều được xử lý trước khi gửi đi cũng như truy cập cơ sở dữ liệu

+ MVC: MVC là bộ phận chứa các thành phần điều khiển, các model và các view để cung cấp cho Web Client những giao diện và chức năng tương ứng trên giao diện đó Thành phần này sẽ mô tả chi tiết những gì người dùng có thể thao tác với hệ thống thong qua giao diện web Dữ liệu đầu vào của thành phần này là các đường dẫn trên giao diện web và các dữ liệu người dùng nhập vào Dữ liệu này sẽ được xử lý, kiểm tra yêu cầu và gửi đến LINQ để truy vấn cơ sở dữ liệu Sauk hi nhận dược dữ liệu từ các truy vấn dữ liệu sẽ được xử lý và gửi trả về cho Web

Trang 31

Client thong qua HTTP.

+ SOAP: SOAP là bộ phận tiếp nhận dữ liệu từ các yêu cầu từ ứng dụng android client sau đó chuyển đổi thành dữ liệu mà server có thể hiểu và thực hiện được để chuyển đến thành phần Web service thực hiện xử lý Đồng thời SOAP sẽ nhận các kết quả trả về từ web service thực hiện chuyển đổi sang định dạng phù hợp mà client android hiểu được sau đó gửi dữ liệu đó cho client thông qua HTTP

Bộ phận này đóng vai trò giống như một nhà phiên dịch giữa client và server Vì client và server sử dụng những công nghệ và ngôn ngữ lập trình khác nhau Nếu không có bộ phận này, client và server sẽ không thể hiểu những dữ liệu truyền thông qua lại

+ MyKsoap: MyKsoap là bộ phận chuyển đổi dữ liệu từ bộ phận Android thành các thông điệp yêu cầu gửi đến server và nhận dữ liệu từ server sau đó chuyển thành dữ liệu trên android để gửi dữ liệu cho bộ phận android xử lý tiếp

Bộ phận này đóng vai trò như là một nhà phiên dịch giúp android hiểu server và trao đổi thông tin được với server Nếu không có bộ phận này client và server sẽ không thể hiểu nhau và truyền thông được với nhau

+ Android System: Đây là bộ phận xử lý chính của ứng dụng client trên android Bộ phận này có nhiệm vụ xử lý hiển thị giao diện trên thiết bị di động của người dùng, đồng thời thông qua giao diện thành phần này sẽ tiếp nhận các yêu cầu của người dùng Những yêu cầu của người dùng sẽ được điều hướng xử lý đến các thành phần phù hợp như: SOAP để gửi thông điệp yêu cầu đến server hoặc bộ phận giải nén để khôi phục dữ liệu gốc ban đầu khi nhận từ server Đây là bộ phận chính xử lý mọi hoạt động của ứng dụng client trên android

+ Web Client: Bộ phận này chỉ là một web browser bất kỳ nào đó thực hiện nhiệm vụ hiển thị giao diện và các chức năng được phép của người dùng trên giao diện đó và tiếp nhận các yêu cầu xử lý của người dùng gửi dữ liệu cho server qua đường dẫn mà server đã cung cấp

+File System và Zip: Bộ phận này có nhiệm vụ lưu trữ và nén các tài

Trang 32

nguyên của người dùng khi người dùng tải tài nguyên lên hệ thống với một mã cụ thể sau đó sẽ đọc các tài nguyên đã được nén gửi về cho thành phần Webservice

để gửi tài nguyên đã nén này cho client Việc nén có khóa bảo vệ này nhằm bảo vệ

dữ liệu gốc ban đầu không thể thấy được bởi các ứng dụng chặn bắt gói tin trên mạng

+ Unzip: Bộ phận này có nhiệm vụ khôi phục lại dữ liệu gốc ban đầu khi nhận được dữ liệu đã nén từ server Việc này cho phép những dữ liệu được gửi từ server chỉ có ứng dụng mới có thể hiểu và chuyển về dữ liệu gốc ban đầu để xử lý Đây chính là việc đáp ứng yêu cầu bảo vệ dữ liệu trên thiết bị client

Admin

Quản lý người dùngQuản lý tài nguyênQuản lý danh mụcQuản lý album

Author

Quản lý thông tinQuản lý tài nguyênQuản lý album

Trang 33

Hình 2.3: Biểu đồ UC người dùng

Hình 2.4: Biểu đồ UC người quản trị

Trang 34

Hình

2.5: Biểu đồ UC tác giả

Trang 35

2.2.2 Đặc tả UC người dùng

+ UC đăng nhập

Mục đích: Use case dùng để cho phép thành viên đăng nhập vào hệ thống

để có được những quyền hạn mà thành viên có đối với hệ thống

Tác nhân: Người dùng

Mô tả chung: Để đăng nhập người dùng đi đến menu và mở giao diện đăng nhập, sau đó nhập thông tin người dùng gồm username và password và nhấn nút đăng nhập

Luồng sự kiện chính:

Bảng 2.2: Luồng sự kiện chính UC đăng nhập Hành động của tác

nhân

Phản ứng của client Phản ứng của server

Chọn giao diện đăng

Nhận phản hồi của server

và thông báo kết quả

Nhận dữ liệu đăng nhập

từ clientKiểm tra dữ liệu đăng nhập

Phản hồi kết quả cho client

Trang 36

Hình 2.6: Biểu đồ luồng trình tự UC đăng nhập

+ UC View Source

Mục đích: Use case này dùng để tải về danh sách các tài nguyên hiện có trên server theo một điều kiện cụ thể nào đó hoặc tất cả và hiển thị lên giao diện màn hình

Tác nhân: Người dùng

Mô tả chung: Khi người dùng vào giao diện chính hoặc click vào từng phần

đã định sẵn thì client sẽ gửi dữ liệu tới server để lấy danh sách dữ liệu yêu cầu và hiển thị lên giao diện cho người dùng Sau đó khi người dùng chọn một tài nguyên nào đó thì sẽ tải tài nguyên đó từ server về và thực thi tài nguyên đó

Luồng sự kiện chính:

Bảng 2.3: Luồng sự kiện chính UC lấy danh sách tài nguyên

Trang 37

Hành động của tác

nhân

Phản ứng của client Phản ứng của server

Mở giao diện hoặc chọn

các nút đã định sẵn

Gửi dữ liệu mà người dùng yêu cầu cho serverNhận danh sách tài nguyên trả về từ server

và hiển thị lên giao diện

Nhận dữ liệu được gửi

Hình 2.7: Biểu đồ trình tự UC View Source

+ UC quản lý thông tin người dùng

Mục đích: Với use case này hệ thống cho phép người dùng có thể thay đổi cập nhật lại một vài thông tin như mật khẩu, tên hiển thị,…

Tác nhân: Người dùng

Mô tả chung: Khi người dùng muốn thay đổi một thông tin nào đó của mình

Trang 38

người dùng chọn vào menu cài đặt sau đó chọn dữ liệu cần thay đổi và nhập dữ liệu thay đổi

muốn sửa đổi

Nhập thông tin mới

Hiển thị giao diện cài đặtHiển thị giao diện sửa thông tin

Gửi dữ liệu đã sửa đổi tới server

Nhận phản hổi và thông báo

Nhận thông tin cần sửa đổiKiểm tra tính hợp lệ của thông tin

Sửa thông tinGửi phản hồi lại cho client

Trang 39

Hình 2.8: Biểu đồ trình tự UC quản lý thông tin người dùng

2.2.3 Đặc tả UC Admin

+ UC Quản lý tài nguyên

Mục đích: Use case này dùng để admin quản lý các thông tin của tài nguyên

để tiến hành khóa tài nguyên lại

Tác nhân: Admin

Mô tả chung: Trong quá trình vận hành hệ thống không tránh khỏi những tài nguyên không được phép, không phù hợp mà người dùng cố tình tải lên vì vậy người quản trị cần khóa những tài nguyên này lại

Luồng sự kiện chính

Bảng 2.5: Luồng sự kiện chính UC Quản lý tài nguyên

Trang 40

Hoạt động của tác

nhân

Phản ứng của client Phản ứng của server

Chọn use case quản lý

Hình 2.9: Luồng sự kiện chính UC quản lý tài nguyên của admin

Ngày đăng: 23/04/2017, 16:30

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Trang web phát triển Android: http://developer.android.com/ Link
[2] Trang web hỏi đáp về android : http://stackoverflow.com/ Link
[3] Trang web chia sẻ kiến thức lập trình: https://duythanhcse.wordpress.comCùng một số tài liệu khác Link
[1]. Bài giảng lập trình hướng đối tượng – Bộ môn công nghệ phần mềm trường đại học công nghệ thông tin và truyền thông Khác
[2]. Bài giảng hệ quản trị cơ sở dữ liệu SQLserver2012 – Khoa công nghệ thông tin Khác
[3] Trần Vũ Tất Bình Căn bản Android Khác
[4] Đào Hải Nam – LINQ to SQL Tutorial – 2009 [5] Bài giảng Lập trình truyền thông - Đại học Cần Thơ Tài liệu tiếng anh Khác
[1] Mark L. Murphy. Beginning Android Apress Khác
[2] Wei-Meng Lee. Beginning Android Application Development Website Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.6: Biểu đồ luồng trình tự UC đăng nhập - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.6 Biểu đồ luồng trình tự UC đăng nhập (Trang 36)
Hình 2.7: Biểu đồ trình tự UC View Source - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.7 Biểu đồ trình tự UC View Source (Trang 37)
Hình 2.8: Biểu đồ trình tự UC quản lý thông tin người dùng - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.8 Biểu đồ trình tự UC quản lý thông tin người dùng (Trang 39)
Hình 2.9: Luồng sự kiện chính UC quản lý tài nguyên của admin - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.9 Luồng sự kiện chính UC quản lý tài nguyên của admin (Trang 40)
Hình 2.11: Luồng sự kiện chính UC quản lý thể loại của admin - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.11 Luồng sự kiện chính UC quản lý thể loại của admin (Trang 43)
Hình 2.14: Luồng sự kiện chính UC quản lý album của author - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.14 Luồng sự kiện chính UC quản lý album của author (Trang 48)
Hình 2.15: Luồng sự kiện chính UC quản lý thông tin tác giả - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.15 Luồng sự kiện chính UC quản lý thông tin tác giả (Trang 49)
Hình 2.16: Biểu đồ lớp 2.2.6 Thiết kế dữ liệu - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.16 Biểu đồ lớp 2.2.6 Thiết kế dữ liệu (Trang 50)
Hình 2.17: Biểu đồ thiết kế cơ sở dữ liệu - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 2.17 Biểu đồ thiết kế cơ sở dữ liệu (Trang 51)
Hình 3.1: Chọn SQLServer cần kết nối và cơ sở dữ liệu cần sử dụng - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 3.1 Chọn SQLServer cần kết nối và cơ sở dữ liệu cần sử dụng (Trang 56)
Hình 3.2: Khởi tạo lớp kết nối sử dụng LINQ 3.1.2 Xây dựng web service - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 3.2 Khởi tạo lớp kết nối sử dụng LINQ 3.1.2 Xây dựng web service (Trang 57)
Hình 3.4 : Tạo website trên visual studio - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 3.4 Tạo website trên visual studio (Trang 59)
Hình 3.5: Các controller của hệ thống website - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 3.5 Các controller của hệ thống website (Trang 60)
Hình 3.8: Sử dụng thư viện ICSharpCode.SharpZipLib.dll - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 3.8 Sử dụng thư viện ICSharpCode.SharpZipLib.dll (Trang 63)
Hình 4.8: Một số giao diện khác - Xây dựng hệ thống phân phối nội dung số cho nền tảng androido
Hình 4.8 Một số giao diện khác (Trang 80)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w