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

TÌM HIỂU JSF FRAMEWORK VÀ ỨNG DỤNG XÂY DỰNG WEBSITE CHIA SẺ HÌNH ẢNH

135 261 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 135
Dung lượng 6,58 MB

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

Nội dung

 Mỗi người dùng khi đăng kí sẽ có một trang cá nhân: là trang giới thiệu về các thông tin cá nhân, thông tin liên quan đến các thiết bị, danh sách các album cũng như các ảnh do mình upl

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM

KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP

TÌM HIỂU JSF FRAMEWORK

VÀ ỨNG DỤNG XÂY DỰNG WEBSITE CHIA SẺ HÌNH ẢNH

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM

KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP

TÌM HIỂU JSF FRAMEWORK

VÀ XÂY DỰNG WEBSITE CHIA

SẺ HÌNH ẢNH

Trần Thị Kim Phụng

TP.HỒ CHÍ MINH, tháng 3 năm 2013

Trang 3

CÔNG TRÌNH HOÀN TẤT TẠI TRƯỜNG ĐẠI HỌC

NÔNG LÂM TP HCM

Cán bộ hướng dẫn: ThS Mai Anh Thơ

Cán bộ phản biện: ThS Lê Phi Hùng

Luận văn cử nhân được bảo vệ tại HỘI ĐỒNG CHẤM LUẬN VĂN CỬ NHÂN TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM ngày….tháng….năm…

Trang 4

NHIỆM VỤ LUẬN VĂN CỬ NHÂN

I TÊN ĐỀ TÀI: Tìm hiểu JSF Framework và Ứng dụng xây dựng website chia sẻ hình ảnh

II NHIỆM VỤ VÀ NỘI DUNG

- Tìm hiểu và nắm vững kiến thức về JSF Framework

- Ứng dụng kiến thức đã tìm hiểu vào trong việc xây dựng website chia sẻ hình ảnh

III NGÀY GIAO NHIỆM VỤ: 28/06/2012

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 12/3/2013

V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS Mai Anh Thơ

Độc Lập-Tự Do-Hạnh Phúc Trường ĐH NÔNG LÂM TpHCM

Họ tên sinh viên: TRẦN THỊ KIM PHỤNG

Ngày tháng năm sinh: 02/01/1990

Chuyên ngành: Công Nghệ Thông Tin

Phái: Nữ

Nơi sinh: Bình Dương Ngành: Công Nghệ Thông Tin

Họ tên sinh viên: MAI ANH PHƯƠNG

Ngày tháng năm sinh: 19/01/1990

Chuyên ngành: Công Nghệ Thông Tin

Phái: Nam

Nơi sinh: Bình Thuận Ngành: Công Nghệ Thông Tin

Ngày…./…./… KHOA CNTT

Ngày…./…./…

CHỦ NHIỆM CHUYÊN NGÀNH Ngày…./…./…

CÁN BỘ HƯỚNG DẪN

Trang 5

Chúng em xin chân thành cảm ơn các thầy cô khoa Công Nghệ thông tin trường Đại học Nông Lâm TP.HCM, với những kiến thức quý báu và sự nhiệt huyệt, tận tụy mà thầy cô đã truyền đạt cho chúng em trong suốt 4 năm học

Chúng con xin gởi đến cha mẹ lời ghi ơn sâu sắc, những người đã sinh ra và dạy bảo chúng con trưởng thành đến ngày hôm nay

Đặc biệt, chúng em xin cảm ơn cô ThS.Mai Anh Thơ đã tận tình hướng dẫn chúng em suốt thời gian qua để chúng em hoàn thành luận văn này

Xin chân thành cảm ơn anh Thiện đã giúp đỡ chúng em rất nhiều trong việc đưa ra yêu cầu cũng như các kiến thức về ảnh

Mặc dù chúng em đã cố gắng hoàn thành tốt luận văn trong phạm

vi và khả năng cho phép nhưng chắc chắn sẽ không tránh khỏi những thiếu sót nhất định Chúng em kính mong nhận được sự cảm thông và tận tình chỉ bảo của quý thầy cô và các bạn

Chúng em kính gửi lời chúc sức khỏe dồi dào và thành đạt đến quý thầy cô và các bạn

LỜI CẢM ƠN

Trang 7

GVHD: ThS Mai Anh Thơ i SVTH: Anh Phương, Kim Phụng

DANH SÁCH CHỮ VIẾT TẮT

Trang 8

GVHD: ThS Mai Anh Thơ ii SVTH: Anh Phương, Kim Phụng

DANH MỤC CÁC HÌNH

Hình 2.1: Trang chủ Flickr 2 

Hình 2.2: Trang chủ Photobucket 3 

Hình 2.3: Trang chủ Shutterfly 5 

Hình 2.4: Trang chủ Picasa 6 

Hình 3.1: Quy trình nghiệp vụ 9 

Hình 3.2: Yêu cầu phi chức năng của hệ thống 15 

Hình 3.3: Use case của Actor 17 

Hình 3.4: Use case của Hệ thống 17 

Hình 3.5: Use case của Admin 18 

Hình 3.6: Use case của Khách 19 

Hình 3.7: Use case của Thành viên 20 

Hình 3.8: Toàn bộ Use case 21 

Hình 3.9: Kiến trúc hệ thống 45 

Hình 3.10 Kiến trúc phần mềm 46 

Hình 3.11: Class diagram 47 

Hình 3.12: Màn hình quảng cáo về website 48 

Hình 3.13: Màn hình trang chủ 49 

Hình 3.14: Màn hình đăng nhập 50 

Hình 3.15: Màn hình trang cá nhân 51 

Hình 3.16: Màn hình cây thư mục trong trang cá nhân 52 

Hình 3.17: Màn hình tùy chỉnh thông tin cá nhân 53 

Hình 3.18: Màn hình đăng nhập của admin 54 

Hình 3.19: Màn hình quản lý tài khoản của admin 55 

Hình 3.20: Màn hình quản lý ảnh của admin 55 

Hình 4.1: Các dịch vụ của JSF 59 

Hình 4.2: Mô hình MVC trong JSF Framework 60 

Hình 4.3: Mô hình UI Components trong JSF 60 

Hình 4.4: Mô hình Static và Dynamic 62 

Hình 4.5: Vòng đời của ứng dụng JSF 63 

Trang 9

GVHD: ThS Mai Anh Thơ iii SVTH: Anh Phương, Kim Phụng Hình 4.6: Xu hướng sử dụng theo DevRates.com 75 

Hình 4.7: Xu hướng sử dụng theo Google Trends 75 

Trang 10

GVHD: ThS Mai Anh Thơ iv SVTH: Anh Phương, Kim Phụng

DANH MỤC CÁC LƯỢC ĐỒ

 

Lược đồ 1: Lược đồ Đăng ký 23 

Lược đồ 2: Lược đồ Đăng nhập 25 

Lược đồ 3: Lược đồ Xem ảnh 27 

Lược đồ 4: Lược đồ Tìm kiếm 29 

Lược đồ 5: Lược đồ Bình luận ảnh 30 

Lược đồ 6: Lược đồ Upload ảnh 32 

Lược đồ 7: Lược đồ Quản lý thông tin cá nhân 34 

Lược đồ 8: Lược đồ Quản lý Album 36 

Lược đồ 9: Lược đồ Quản lý ảnh 39 

Lược đồ 10: Lược đồ Quản lý ảnh của Admin 41 

Lược đồ 11: Lược đồ Quản lý tài khoản của Admin 43 

Lược đồ 12: Lược đồ Tạo tài khoản của Admin 44 

Lược đồ 13: Lược đồ Chỉnh sửa tài khoản của Admin 44 

Trang 11

GVHD: ThS Mai Anh Thơ v SVTH: Anh Phương, Kim Phụng

DANH MỤC CÁC BẢNG

 

Bảng 2.1: Bảng so sánh các dịch vụ lưu trữ ảnh trực tuyến 7 

Bảng 4.1: Bảng các thẻ JSF core 70 

Bảng 4.2: Bảng các thuộc tính của Attribute, Parameter và Facet 71 

Bảng 4.3: Bảng các thẻ Input trong JSF HTML 71 

Bảng 4.4: Bảng các thẻ Output trong JSF HTML 71 

Bảng 4.5: Bảng các thẻ Command trong JSF HTML 72 

Bảng 4.6: Bảng các thẻ Selection trong JSF HTML 72 

Bảng 4.7: Bảng các thẻ Layout trong JSF HTML 72 

Bảng 4.8: Bảng các thẻ DataTable trong JSF HTML 72 

Bảng 4.9: Bảng các thẻ Message trong JSF HTML 72 

Bảng 4.10: Bảng các thuộc tính thông dụng của JSF HTML 73   

Trang 12

GVHD: ThS Mai Anh Thơ vi SVTH: Anh Phương, Kim Phụng

TÓM TẮT

Với khối lượng công việc nhiều như hiện nay thì không thể thiếu những lĩnh vực giải trí để giải tỏa bớt những áp lực và sự căng thẳng sau một ngày dài làm việc Một trong những lĩnh vực giải trí được nhiều người ưu chuộng nhất hiện nay là dịch vụ chơi ảnh

Nhằm hỗ trợ tối đa và đem lại dịch vụ lưu trữ cũng như quản lý hình ảnh tốt nhất

để phục vụ cho nhu cầu chơi ảnh của người chơi trong việc lưu trữ cũng như quản lý ảnh trực tuyến, chúng tôi đã tiến hành xây dựng website chia sẻ hình ảnh

Trong quá trình xây dựng, nhóm đã chọn ngôn ngữ lập trình là Java, framework được sử dụng là JSF (là một UI framework cho việc xây dựng các ứng dụng web chạy trên Java server và thay thế UI phía sau cho client), cùng với thành phần mở rộng của nó là Primefaces (là bộ thư viện mã nguồn mở với các thành phần mở rộng khác của JSF) Ngoài ra, còn có một số công nghệ hỗ trợ khác như: Gif4j (là bộ thư viện Java, nó cung cấp các giải pháp xử lý hình ảnh một cách toàn diện, mạnh mẽ với hiệu suất cao), Metadata Extractor (là bộ thư viện Java dùng để đọc siêu dữ liệu từ các tập tin hình ảnh)

Hệ thống xây dựng hoàn chỉnh có những chức năng cơ bản của một website chia

sẻ hình ảnh trực tuyến như: upload ảnh, tìm kiếm ảnh, xem ảnh ở nhiều chế độ, bình luận ảnh…

Trong quá trình tìm hiểu và xây dựng hệ thống đã giúp nhóm nghiên cứu nắm rõ hơn về JSF framework và thành phần mở rộng của nó là Primefaces, nắm vững về quy trình nghiệp vụ của website chia sẻ hình ảnh

Trang 13

GVHD: ThS Mai Anh Thơ vii SVTH: Anh Phương, Kim Phụng

MỤC LỤC

 

Chương 1 1 

MỞ ĐẦU 1 

1.1.  Lý do chọn đề tài 1 

1.2.  Phạm vi nghiên cứu 1 

Chương 2 2 

TỔNG QUAN 2 

2.1.  Khảo sát hiện trạng của các website chơi ảnh khác hiện nay 2 

2.1.1.  Flickr.com 2 

2.1.2.  Photobucket.com 3 

2.1.3.  Shutterfly 4 

2.1.4.  Picasa Web Album 6 

2.1.5.  Và một số website khác 6 

2.1.6.  Đánh giá chung từ các website đã khảo sát 7 

Chương 3 8 

PHÁT BIỂU BÀI TOÁN VÀ PHÂN TÍCH YÊU CẦU 8 

3.1.  Yêu cầu thực tế từ khác hàng 8 

3.2.  Quy trình nghiệp vụ cho website chia sẻ hình ảnh 9 

3.3.  Yêu cầu chức năng 9 

3.3.1.  Admin 9 

3.3.2.  Khách 11 

3.3.3.  Thành viên 12 

3.4.  Yêu cầu phi chức năng 15 

3.4.1.  Security 15 

3.4.2.  Performance 16 

3.5.  Phân tích các chức năng 17 

3.5.1.  Lược đồ use case 17 

3.5.2.  Đặc tả use case 22 

3.5.2.1. USE CASE CHO NGƯỜI DÙNG 22 

1.  Use case DangKy 22 

Trang 14

GVHD: ThS Mai Anh Thơ viii SVTH: Anh Phương, Kim Phụng

2.  Use case DangNhap 24 

3.  Use case XemAnh 25 

4.  Use case TimKiem 27 

3.5.2.2. USE CASE CHO THÀNH VIÊN 29 

1.  Use case BinhLuan 29 

2.  Use case Upload 31 

3.  Use case QuanLyThongTinCaNhan 33 

4.  Use case QuanLyAlbum 34 

5.  Use case QuanLyAnh 37 

3.5.2.3. USE CASE CHO ADMIN 39 

1.  Use case QuanLyAnh 39 

2.  Use case QuanLyAccounts 41 

3.6.  Kiến trúc hệ thống 45 

3.7.  Kiến trúc phần mềm 46 

3.8.  Class diagram 47 

3.9.  Một số hình ảnh hệ thống 48 

Chương 4 56 

CÁC CÔNG NGHỆ SỬ DỤNG ĐỂ HIỆN THỰC BÀI TOÁN 56 

4.1.  JSF FRAMEWORK 56 

4.1.1.  Khái niệm về JSF 56 

4.1.2.  Ưu điểm của JSF 56 

4.1.3.  So sánh JSF framework với Struts framework 57 

4.1.4.  Các thành phần của JSF 57 

4.1.5.  Mục tiêu của JSF 58 

4.1.6.  Các dịch vụ framework JSF 59 

4.1.7.  Các thành phần chính của JSF 60 

4.1.8.  Các pha vòng đời của ứng dụng JSF 62 

4.1.9.  Managed Beans 64 

4.1.10. Message Bundles 66 

4.1.11. Backing Beans 66 

4.1.12. Bean Scopes 67 

4.1.13. Configuring Beans 68 

Trang 15

GVHD: ThS Mai Anh Thơ ix SVTH: Anh Phương, Kim Phụng

4.1.14. Standard JSF Tags 69 

4.2.  PRIMEFACES 75 

4.2.1.  Primefaces là gì? 75 

4.2.2.  Xu hướng sử dụng 75 

4.2.3.  Ưu điểm của Primefaces 76 

4.2.4.  Các loại Components trong Primefaces 76 

4.2.5.  Các trình duyệt hỗ trợ 76 

4.2.6.  Tích hợp Primefaces vào JSF Framework 77 

4.3.  Gif4j 78 

4.3.1.  Tổng quan 78 

4.3.2.  Cách sử dụng 79 

4.4.  Metadata Extractor 81 

4.4.1.  Tổng quan 81 

4.4.2.  Cách sử dụng 82 

4.5.  Và một số công nghệ khác 84 

Chương 5 85 

PHÂN TÍCH NHỮNG KHÓ KHĂN TRONG QUÁ TRÌNH HIỆN THỰC BÀI TOÁN VÀ ĐỀ XUẤT HƯỚNG GIẢI QUYẾT 85 

5.1.  Primefaces 3.4.2 không hiển thị <p: confirmDialog> 85 

5.2.  Dynamicly included page form first submit fail 85 

5.3.  Lỗi khi phát triển chức năng LazyLoad ảnh 86 

5.4.  Lỗi sử dụng trường “match” trong <p:password> 87 

5.5.  Lỗi <p:fileUpload mode="simple"> không có hỗ trợ ajax 87 

5.6.  Lỗi <p:dialog appendToBody="true"> trong trang <ui:include> 88 

5.7.  Lỗi <p:commandButton> không gọi action bean khi nằm trong <p:dialog> khi <p:dialog> không có thuộc tính appendToBody="true" 88 

5.8.  Lỗi khi đồng thời sử dụng <p:blockUI> và <p:fileUpload mode=”advanced”> chung một trang 88 

5.9.  Các lỗi liên quan đến form 89 

5.10.  Các lỗi liên quan đến update component tại các trang <ui:include> có chứa <p: dialog > hay <p:confirmDialog> 91 

5.11.  Lỗi UTF-8 trong JSF 92 

5.12.  Lỗi Packet quá lớn trong Mysql 97 

Trang 16

GVHD: ThS Mai Anh Thơ x SVTH: Anh Phương, Kim Phụng

5.13.  Lỗi chỉ tìm kiếm với những từ khóa trên 3 ký tự (Hạn chế của FullText

trong MySql) 97 

5.14.  Những từ khóa bị giới hạn trong file stopwords (Hạn chế của FullText trong MySql) 98  5.15.  50% Threshold (Hạn chế của FullText trong MySql) 99 

5.16.  Lỗi MyISAM Storage Engine không hỗ trợ ForeignKey trong MySQL 99 

Chương 6 100 

KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN 100 

6.1.  Kết quả đạt được 100 

6.1.1.  Kiến thức 100 

6.1.2.  Hệ thống – Website chia sẻ hình ảnh 100 

6.2.  Hướng phát triển 101 

TÀI LIỆU THAM KHẢO 102 

XÂY DỰNG ỨNG DỤNG HELLO WORD VỚI JSF FRAMEWORK 1 

CÀI ĐẶT ỨNG DỤNG 11 

Hướng dẫn cài đặt JDK 1.7 11 

Hướng dẫn tạo CSDL và cấu hình CSDL cho ứng dụng 12 

Hướng dẫn chạy ứng dụng 15 

Trang 17

GVHD: Ths Mai Anh Thơ 1 SVTH: Anh Phương, Kim Phụng

để có thể tìm kiếm một cách nhanh nhất

Ngay trong lĩnh vực thư giản, giải trí như chơi ảnh cũng xảy ra những vấn đề

nan giải như: làm sao để lưu trữ hàng ngàn file ảnh mà vẫn có khả năng mở rộng,

có thể backup hoặc restore khi xảy ra lỗi; làm sao để lưu giữ các file ảnh thật tốt,

dễ dàng quản lý, tìm kiếm cũng như chia sẻ các file ảnh của mình cho mọi người;… Để giải quyết những khó khăn trên, nhóm đã tiến hành nghiên cứu và

phát triển một website để người dùng có thể dễ dàng lưu trữ cũng như tìm kiếm các file ảnh mình đã upload

1.2 Phạm vi nghiên cứu

 Tìm hiểu quy trình nghiệp vụ mà website chia sẻ ảnh cần có

 Tìm hiểu về JSF Framework

 Tìm hiểu về Primesfaces và tích hợp Primesfaces vào JSF Framework

 Phân tích lược đồ Use case hệ thống, phân tích kiến trúc phần mềm và kiến trúc hệ thống từ đó tiến hành phát triển phần mềm

 Tiến hành triển khai hệ thống ra thực tế

Trang 18

GVHD: Ths Mai Anh Thơ 2 SVTH: Anh Phương, Kim Phụng

Chương 2 TỔNG QUAN

2.1 Khảo sát hiện trạng của các website chơi ảnh khác hiện nay

Dưới đây là những website cung cấp dịch vụ lưu trữ, chia sẻ ảnh miễn phí phổ biến, được nhiều người sử dụng cũng như ưa thích nhất hiện nay mà nhóm đã khảo sát

2.1.1 Flickr.com

Flickr cho phép bạn tổ chức ảnh theo dạng album hay bộ sưu tập Bạn có thể gắn thẻ (tag) ảnh, gom ảnh thành nhóm, ghi chú, chia sẻ ảnh qua mạng xã hội, in ấn… Flickr cung cấp ứng dụng dùng cho máy tính, di động, và công cụ biên tập ảnh dựa trên nền web chẳng hạn cắt ảnh, loại bỏ mắt đỏ

Hình 2.1: Trang chủ Flickr

Ưu điểm:

- Dễ dàng thiết lập riêng tư

- Các công cụ tổ chức ảnh tốt

- Khả năng tải phim chỉ thông qua “một cửa” dành cho tất cả các thiết bị:

máy tính, điện thoại thông minh…

Trang 19

GVHD: Ths Mai Anh Thơ 3 SVTH: Anh Phương, Kim Phụng

- Hỗ trợ các ứng dụng Android, iPhone giúp việc truy cập và chia sẻ ảnh

dễ dàng

Nhược điểm:

- Tài khoản miễn phí bị giới hạn kích thước tập tin, băng thông và độ phân

giải ảnh

- Flickr không hỗ trợ định dạng ảnh RAW

- Quá nhiều tính năng như gắn thẻ ảnh, nhóm, liên lạc… khiến giao diện

trở nên lộn xộn, gây cản trở với những người dùng chỉ có nhu cầu lưu

ảnh trực tuyến

Link tham khảo: http://www.flickr.com/

2.1.2 Photobucket.com

Photobucket là một trong những dịch vụ lưu trữ ảnh trực tuyến khá phổ biến

Hiện có khoảng 10 tỷ bức ảnh đang lưu trữ trên Photobucket Dịch vụ này cho

phép người dùng tổ chức album, lưu trữ phim ảnh không giới hạn, tích hợp

Facebook và hỗ trợ ứng dụng di động

Hình 2.2: Trang chủ Photobucket

Trang 20

GVHD: Ths Mai Anh Thơ 4 SVTH: Anh Phương, Kim Phụng

Ưu điểm:

- Hỗ trợ tốt các mạng xã hội giúp việc chia sẻ ảnh dễ dàng, thuận tiện

- Ứng dụng di động có khả năng chỉnh sửa ảnh giúp bạn quản lý và truy

tổ chức album, chỉnh sửa ảnh, chia sẻ album

Trang 21

GVHD: Ths Mai Anh Thơ 5 SVTH: Anh Phương, Kim Phụng

Hình 2.3: Trang chủ Shutterfly

Ưu điểm:

- Không giới hạn kích thước tập tin, băng thông

- Hỗ trợ ứng dụng iOS, ứng dụng dành riêng cho iPad

Nhược điểm:

- Bạn có thể lưu ảnh nguyên bản, tuy nhiên ảnh tải về là ảnh nén Nếu

muốn ảnh nguyên bản, bạn phải mua đĩa CD lưu ảnh từ dịch vụ này

- Với các nhiếp ảnh gia, Shutterfly không phải là lựa chọn tốt

- Shutterfly hiện chưa hỗ trợ ứng dụng Android

Link tham khảo: http://www.shutterfly.com/

Trang 22

GVHD: Ths Mai Anh Thơ 6 SVTH: Anh Phương, Kim Phụng

2.1.4 Picasa Web Album

Picasa Web Album là dịch vụ lưu trữ ảnh tích hợp mạnh mẽ với mạng xã hội Google+ Picasa Web Album cho phép chia sẻ, chỉnh sửa ảnh, tổ chức album, lưu trữ phim và hỗ trợ ứng dụng máy tính cho quản lý hình ảnh Với tài khoản miễn phí, bạn có thể tải ảnh nguyên bản, độ phân giải 2048x2048 pixel, nhưng sẽ bị giới hạn lưu trữ mức 1GB

- Bạn không thể tải về toàn bộ album

Link tham khảo: http://picasa.google.com/

2.1.5 Và một số website khác

- Nikonvn.com – http://nikonvn.com/apvn/

- 500px.com – http://500px.com/

- Pinterest.com – http://pinterest.com/

Trang 23

GVHD: Ths Mai Anh Thơ 7 SVTH: Anh Phương, Kim Phụng

2.1.6 Đánh giá chung từ các website đã khảo sát

Các website ảnh hiện nay cung cấp rất nhiều dịch vụ thú vị cũng như rất mạnh

trong việc lưu trữ hình ảnh, có thể đáp ứng được nhu cầu của người dùng hiện nay

Giá Standard: Miễn phí;

Nguyên bản

Bảng 2.1: Bảng so sánh các dịch vụ lưu trữ ảnh trực tuyến

Qua việc khảo sát những website, đã cho nhóm một cái nhìn toàn diện và có

kinh nghiệm hơn trong việc xây dựng một website phục vụ cho việc lưu trữ và chia

sẻ hình ảnh

Trang 24

GVHD: Ths Mai Anh Thơ 8 SVTH: Anh Phương, Kim Phụng

Chương 3 PHÁT BIỂU BÀI TOÁN VÀ PHÂN TÍCH YÊU CẦU

 Hỗ trợ người dùng tìm kiếm ảnh từ hàng ngàn tấm ảnh mà mình

đã upload nhanh chóng

 Hỗ trợ người dùng upload ảnh một cách nhanh chóng Có thể upload ảnh vào album đã tồn tại hoặc vào album mới

▪ Giới hạn tải ảnh: không giới hạn số ảnh upload cũng như

dung lượng ảnh nếu đã đăng kí làm thành viên

▪ Giới hạn dung lượng: Tùy thuộc vào từng loại tài khoản mà

có số dung lượng giới hạn khác nhau (Diamond, VIP,

Normal, Free)

 Hệ thống hỗ trợ nén hình ảnh khi người dùng upload ảnh (Giảm kích thước, độ phân giải cũng như dung lượng ảnh) nhằm tăng hiệu suất khi load ảnh

 Hệ thống hỗ trợ đọc các siêu dữ liệu (metadata) của ảnh để hiển thị các thông tin cơ bản về ảnh cho người dùng

 Mỗi người dùng khi đăng kí sẽ có một trang cá nhân: là trang giới thiệu về các thông tin cá nhân, thông tin liên quan đến các thiết bị, danh sách các album cũng như các ảnh do mình upload,

… và có thể cho người khác vào xem trang cá nhân của mình nhưng không cho phép người khác xem các album nếu album đó

Trang 25

GVHD: Ths Mai Anh Thơ 9 SVTH: Anh Phương, Kim Phụng

 Hỗ trợ người dùng xem và trao đổi thông qua bình luận ảnh

3.2 Quy trình nghiệp vụ cho website chia sẻ hình ảnh

analysis Business Process Mo

Admin ThanhVien HeThong

Khach

Ðang ký làm thành

ủ viên c a website

G i mail xác nh n

và link kích ho t tài ả kho n

ả Upload nh vào trong

h th ng và qu n lý ả

ả ượ ể ị các nh đ c hi n th trong website

Kích ho t tài kho n

ế Xem và tìm ki m

ả các hình nh có

trong website

ể ị ả

Hi n th các nh mà

ệ admin đã duy t và cho phép

Tr thành thành viên ủ

c a website ậ

Đăng nh p vào

website

Hình 0.1: Quy trình nghiệp vụ 3.3 Yêu cầu chức năng

3.3.1 Admin

Trang 26

GVHD: Ths Mai Anh Thơ 10 SVTH: Anh Phương, Kim Phụng

3.3.1.1 Quản lý tài khoản

«Functional» Status: approved Priority: medium Difficulty: meidum

Người dùng với quyền hạn là Admin sẽ được quản lý tất cả các tài khoản trong hệ thống, có quyền thêm, xóa, sửa danh sách các tài khoản cũng như kích hoạt một tài khoản bất kì

3.3.1.1.1 Tìm kiếm và lọc tài khoản

«Functional» Status: approved Priority: medium Difficulty: meidum

Lọc và tìm kiếm một hoặc nhiều tài khoản trong hệ thống với các tiêu chí khác nhau

3.3.1.1.2 Xóa tài khoản

«Functional» Status: approved Priority: medium Difficulty: medium

Xóa tài khoản nếu tài khoản đó chưa được kích hoạt trong thời gian quy định

3.3.1.1.3 Chỉnh sửa tài khoản

«Functional» Status: approved Priority: medium Difficulty: low

Nâng cấp tài khoản (nâng cấp loại tài khoản: Normal, VIP…)

3.3.1.1.4 Thêm tài khoản

«Functional» Status: approved Priority: low Difficulty: low

Admin được phép thêm một hoặc nhiều tài khoản vào trong hệ thống

3.3.1.2 Quản lý hình ảnh

«Functional» Status: approved Priority: medium Difficulty: medium

Admin có quyền quản lý tất cả các hình ảnh của thành viên đã upload với quyền truy xuất là “Public”, có quyền thêm, xóa, sửa

và duyệt ảnh, cho phép ảnh nào được hiển thị ra website và ảnh nào không được phép

Trang 27

GVHD: Ths Mai Anh Thơ 11 SVTH: Anh Phương, Kim Phụng

3.3.1.2.1 Tìm kiếm và lọc ảnh

«Functional» Status: approved Priority: medium Difficulty: medium

Lọc và tìm kiếm một hoặc nhiều hình ảnh theo nhiều tiêu chí khác nhau

3.3.1.2.2 Duyệt ảnh

«Functional» Status: approved Priority: medium Difficulty: low

Admin duyệt ảnh của người dùng upload, cho phép ảnh nào được hiển thị ra trang web và ảnh nào không được phép hiển thị

3.3.2 Khách

3.3.2.1 Đăng ký

«Functional» Status: approved Priority: medium Difficulty: medium

Actor đăng ký một tài khoản để trở thành thành viên của hệ thống

3.3.2.2 Đăng nhập

«Functional» Status: approved Priority: medium Difficulty: medium

Actor thực hiện chức năng đăng nhập vào hệ thống để có thể thực hiện những chức năng của thành viên

3.3.2.3 Xem ảnh

«Functional» Status: approved Priority: medium Difficulty: medium

Actor chọn và xem một hình ảnh nào đó cùng với những thông

số kỹ thuật của nó

3.3.2.3.1 Xem với kích thước ảnh tùy chọn

«Functional» Status: approved Priority: medium Difficulty: medium

Trang 28

GVHD: Ths Mai Anh Thơ 12 SVTH: Anh Phương, Kim Phụng

Actor có thể chọn và xem ảnh với nhiều kích thước khác nhau

3.3.2.3.2 Xem ảnh tiếp theo

«Functional» Status: approved Priority: medium Difficulty: low

Actor có thể xem ảnh kế tiếp trong danh sách ảnh khi actor đang xem chi tiết một hình ảnh bất kỳ

3.3.2.3.3 Xem ảnh trước đó

«Functional» Status: approved Priority: medium Difficulty: low

Actor có thể xem ảnh trước đó trong danh sách ảnh khi actor đang xem chi tiết một hình ảnh bất kỳ

3.3.2.4 Download ảnh

«Functional» Status: approved Priority: medium Difficulty: low

Actor được phép download ảnh từ website

3.3.2.5 Tìm kiếm

«Functional» Status: approved Priority: medium Difficulty: hight

Actor có thể tìm kiếm một hay nhiều ảnh bất kỳ nào đó

3.3.2.6 Quên mật khẩu

«Functional» Status: approved Priority: low Difficulty: low

Nếu Actor quên mật khẩu có thể cung cấp email cho hệ thống gửi mail thay đổi mật khẩu Đường link thay đổi mật khẩu trong email chỉ có giá trị trong 24h

3.3.3 Thành viên

3.3.3.1 Bình luận

«Functional» Status: approved Priority: high Difficulty: medium

Trang 29

GVHD: Ths Mai Anh Thơ 13 SVTH: Anh Phương, Kim Phụng

Sau khi actor đăng nhập vào hệ thống thì có thể bình luận bất kỳ hình ảnh nào

3.3.3.2 Upload

«Functional» Status: approved Priority: hight Difficulty: medium

Actor có thể upload ảnh với dung lượng và số lượng ảnh được quy định bởi admin

3.3.3.3 Quản lý thông tin cá nhân

«Functional» Status: approved Priority: hight Difficulty: hight

Actor được hệ thống cung cấp một trang cá nhân riêng Actor có thể thay đổi, cập nhật, chỉnh sửa thông tin về mình…

3.3.3.3.1 Thêm, xóa, sửa các thiết bị (Camera)

«Functional» Status: approved Priority: medium Difficulty: medium

Actor sẽ quản lý danh sách thiết bị camera của mình

3.3.3.3.2 Thay đổi avatar

«Functional» Status: approved Priority: medium Difficulty: medium

Actor vào trong trang thông tin cá nhân của mình để thay đổi hình avatar của mình

3.3.3.3.3 Thay đổi CoverImage

«Functional» Status: approved Priority: medium Difficulty: medium

Actor vào trong trang thông tin cá nhân của mình để thay đổi hình CoverImage yêu thích

3.3.3.4 Quản lý album

«Functional» Status: Approved Priority: medium Difficulty: medium

Trang 30

GVHD: Ths Mai Anh Thơ 14 SVTH: Anh Phương, Kim Phụng

Actor có thể thêm, xóa, sửa danh sách album của mình

3.3.3.4.1 Xem album

«Functional» Status: approved Priority: medium Difficulty: medium

Actor có thể xem tất cả những hình ảnh nằm trong 1 album của chính actor đó

3.3.3.4.2 Chỉnh sửa album

«Functional» Status: approved Priority: medium Difficulty: medium

Actor có thể thay đổi tên hoặc những mô tả về album hoặc những hình ảnh nằm trong album đã được tạo từ trước đó

3.3.3.4.3 Xóa album

«Functional» Status: approved Priority: medium Difficulty: medium

Actor có thể xóa 1 album cùng với tất cả những hình ảnh nằm trong album

3.3.3.4.4 Thêm album

«Functional» Status: approved Priority: medium Difficulty: medium

Actor có thể tạo thêm một hoặc nhiều album vào trong danh sách album của mình

3.3.3.5 Quản lý ảnh

«Functional» Status: approved Priority: medium Difficulty: medium

Actor có quyền xem, chỉnh sửa miêu tả hoặc bình luận về một hình ảnh bất kỳ của mình

3.3.3.5.1 Xem ảnh

«Functional» Status: approved Priority: medium Difficulty: medium

Trang 31

GVHD: Ths Mai Anh Thơ 15 SVTH: Anh Phương, Kim Phụng

Actor có thể xem ảnh của mình ở nhiều kích thước khác nhau

3.3.3.5.2 Chỉnh sửa ảnh

«Functional» Status: approved Priority: medium Difficulty: low

Actor có quyền chỉnh sửa về mô tả ảnh (description) của bất kỳ hình ảnh nào của mình

3.3.3.5.3 Xóa ảnh

«Functional» Status: Approved Priority: medium Difficulty: low

Actor có quyền xóa một hay nhiều hình của mình

3.4 Yêu cầu phi chức năng

custom Non-Functional Requirements custom Security

Sao luu va Phuc hoi Co so du lieu

Chong SQL injection

Han che cac tan cong tu ben ngoai

custom Performance

He thong dap ung nhieu nguoi dung

Hoat dong lien tuc

Co kha nang mo rong

Hình 0.2: Yêu cầu phi chức năng của hệ thống 3.4.1 Security

3.4.1.1 Sao luu va Phuc hoi Co so du lieu

«Functional» Status: approved Priority: medium Difficulty: medium

Trang 32

GVHD: Ths Mai Anh Thơ 16 SVTH: Anh Phương, Kim Phụng

Admin có thể sao lưu lại toàn bộ dữ liệu ảnh cần thiết và phục hồi lại dữ liệu khi gặp sự cố

3.4.1.2 Chong SQL Injection

«Functional» Status: approved Priority: medium Difficulty: medium

Hệ thống phải tránh được các lỗi liên quan đến các câu lệnh SQL Ngăn chặn lỗi SQL từ đâu vào

3.4.1.3 Han che cac tan cong tu ben ngoai

«Functional» Status: approved Priority: medium Difficulty: medium

Hệ thống có thể thông qua các biện pháp để hạn chế các tấn công

từ bên ngoài (như: mã hóa mật khẩu,…)

3.4.2 Performance

3.4.2.1 He thong dap ung nhieu nguoi dung

«Functional» Status: proposed Priority: medium Difficulty: high

Hệ thống có khả năng đáp ứng nhiều người dùng cùng truy cập đồng thời

3.4.2.2 Hoat dong lien tuc

«Functional» Status: proposed Priority: medium Difficulty: medium

Hệ thống có khả năng hoạt động liên tục trừ thời gian bảo trì

3.4.2.3 Co kha nang mo rong

«Functional» Status: proposed Priority: medium Difficulty: medium

Có khả năng mở rộng thêm các chức năng mới, thêm module mới

Trang 33

GVHD: Ths Mai Anh Thơ 17 SVTH: Anh Phương, Kim Phụng

3.5 Phân tích các chức năng

3.5.1 Lược đồ use case

uc Actors

NguoiDung

Hình 0.3: Use case của Actor

uc System

System

Send Mail

Backup & Restore

Hình 0.4: Use case của Hệ thống

Trang 34

GVHD: Ths Mai Anh Thơ 18 SVTH: Anh Phương, Kim Phụng

Trang 35

GVHD: Ths Mai Anh Thơ 19 SVTH: Anh Phương, Kim Phụng

Trang 36

GVHD: Ths Mai Anh Thơ 20 SVTH: Anh Phương, Kim Phụng

DangNhap QuenMatKhau

Trang 37

GVHD: Ths Mai Anh Thơ 21 SVTH: Anh Phương, Kim Phụng

QuanLyHinhAnh QuanLyTaiKhoan

TaoTaiKhoan TimKiem&LocHinhAnh TimKiem&LocTaiKhoan

Trang 38

GVHD: Ths Mai Anh Thơ 22 SVTH: Anh Phương, Kim Phụng

3.5.2 Đặc tả use case

3.5.2.1 USE CASE CHO NGƯỜI DÙNG

1 Use case DangKy

1.1 Tóm tắt

- Use case này cho phép người dùng đăng ký làm thành viên của

website để có được những chức năng của người thành viên

1.2 Dòng sự kiện 1.2.1 Dòng sự kiện chính

- Use case này bắt đầu khi actor muốn đăng ký làm thành viên của

hệ thống

- Actor chọn “Đăng nhập/Đăng ký”

- Hệ thống hiển thị form cho actor nhập các thông tin: gồm Tên đăng nhập và Email

- Hệ thống sẽ kiểm tra Tên đăng nhập và Email có hợp lệ không ngay khi actor nhập vào form

- Actor chọn nút “Đăng ký”

- Hệ thống sẽ tạo tài khoản cho actor và lưu xuống cơ sở dữ liệu, sau

đó hệ thống tự động gửi mật khẩu về email mà actor vừa đăng kí

Hệ thống cho phép actor đăng nhập vào hệ thống

1.2.2 Dòng sự kiện phụ

- Nếu actor nhập các thông tin không đầy đủ: hệ thống sẽ disable nút

“Đăng ký”

- Nếu actor nhập Tên đăng nhập đã tồn tại hoặc Email không hợp lệ

hay Email đã tồn tại: hệ thống sẽ thông báo và disable nút “Đăng ký”

- Nếu actor chọn nút “Đóng”, lúc này form đăng ký sẽ được đóng lại

và use case đăng ký kết thúc

Trang 39

GVHD: Ths Mai Anh Thơ 23 SVTH: Anh Phương, Kim Phụng

1.2.3 Dòng sự kiện khác

- Không có

1.3 Kết thúc

- Nếu actor đăng ký thành công thì hệ thống sẽ cho phép actor đăng

nhập vào hệ thống và sử dụng những chức năng của thành viên

1.4 Điều kiện tiên quyết

Hiển thị form nhập thông tin

Nhập Tên đăng nhập

v à email

Kiểm tra tên đăng nhập v à email

Hiển thị thông báo

Lưu dữ liệu xuống CSDL v à cho phép người dùng đăng nhập

Trang 40

GVHD: Ths Mai Anh Thơ 24 SVTH: Anh Phương, Kim Phụng

2 Use case DangNhap

1.1 Tóm tắt

- Use case này cho phép người dùng đăng nhập vào hệ thống như

một thành viên để sử dụng các chức năng dành cho thành viên 1.2 Dòng sự kiện

1.2.1 Dòng sự kiện chính

- Use case này bắt đầu khi actor chọn “Đăng nhập/Đăng ký”

- Hệ thống hiển thị form cho người dùng nhập các thông tin: gồm Tên đăng nhập, Mật khẩu

- Actor nhập các thông tin cần thiết và nhấn “Đăng Nhập”

- Hệ thống sẽ kiểm tra Tên đăng nhập và Mật khẩu dưới cơ sở dữ liệu và cho phép actor đăng nhập vào hệ thống

- Nếu actor đăng nhập thành công thì hệ thống sẽ cho phép sử dụng

những chức năng của thành viên

1.4 Điều kiện tiên quyết

- Actor đã đăng ký thành viên thành công trước đó

1.5 Điều kiện sau

Ngày đăng: 22/07/2018, 02:10

TỪ KHÓA LIÊN QUAN

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