2.Mục tiêu của đề tài Xây dựng được một trang tự động thu thập các thông tin của phiếu giảm giá từ các nguồn trang bán phiếu giảm giánhư muachung.vn, cungmua.com, nhommua.com, hotdeal.v
Trang 1TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN & TOÁN ỨNG DỤNG
LUẬN VĂN TỐT NGHIỆP
WEBSITE TỔNG HỢP VÀ TÌM KIẾM
VOUCHER GIẢM GIÁ
Giảng viên hướng dẫn: Ths HUỲNH LÊ TẤN TÀI
Sinh viên thực hiện: NGUYỄN THÀNH THÁI
NGUYỄN PHÚ VINH
Lớp : 07TH3D
Khoá : 2007-2011
Trang 2LỜI CÁM ƠN
Đầu tiên chúng em xin được gửi lời cảm ơn chân thành nhất tới các thầy, cô trong khoa Công Nghệ Thông Tin trường Đại Học TÔN ĐỨC THẮNG và đặc biệt cảm ơn sự hướng dẫn, góp ý, nhắc nhở nhiệt tình, tận tâm của Thầy Trần Khải Hoàng và Thầy Huỳnh Lê Tấn Tài trong suốt quá trình làm luận văn của chúng em Với mức độ nghiên cứu sinh viên, chắc chắn đề tài sẽ khó tránh khỏi những hạn chế, rất mong nhận được sự đóng góp, chia sẻ từ quý thầy cô và các bạn quan tâm tới đề tài này
Sau cùng, em xin kính chúc tới toàn thể quý thầy cô,cùng toàn thể các bạn sinh viên một lời chúc sức khỏe và thành đạt !
TP.HCM, ngày 18 tháng 7 năm 2011
Sinh viên NGUYỄN THÀNH THÁI NGUYỄN PHÚ VINH
Trang 3NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Lớp : 07TH3D Khóa : 11
Trang 4
NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN
Lớp : 07TH3D Khóa : 11
Trang 5
LỜI MỞ ĐẦU
Ngày nay việc mua hàng giảm giá đã trở thành một nhu cầu thiết yếu đối với người tiêu dùng Người tiêu dùng có nhiều lựa chọn để mua cho mình một lọai hàng giảm giá theo ý muốn, phù hợp với túi tiền thông qua các chương trình khuyến mãi trên các siêu thị, các cửa hàng Và cũng chính vì nhu cầu này, mà việc hình thành ra một lọai hình thức mua hàng theo nhóm đã xuất hiện
Với việc mua hàng giảm giá theo nhóm, người dùng được tự do lựa chọn cho mình một mặt hàng yêu thích trên một trang bán phiếu giảm giá nào đó, đặt mua, và người ta sẽ mang mặt hàng cho người tiêu dùng dưới dạng một lọai phiếu, ta có thể gọi là phiếu giảm giá Một bất tiện là do có khá nhiều trang bán phiếu giảm giá, người tiêu dùng phải vào từng trang xem loại mặt hàng mình thích, điều này gây ra một sự bất tiện không nhỏ với người dùng
Chính vì thế, việc cho ra đời một trang tự động thu thập thông tin các phiếu giảm giá về đưa lên một trang cố định sẽ giúp người dùng khi truy cập vào trang có thể tìm kiếm và xem các phiếu giảm giá một cách tổng quát, từ đó chọn ra cho mình một hay nhiều phiếu giảm giá yêu thích Và cũng chính vì vậy, trang mang tên GiamGia đã ra đời như để đáp ứng yêu cầu khách quan của người tiêu dùng cũng như đáp ứng được với số lượng các trang bán phiếu giảm giá ra đời ngày càng nhiều
Hiện nay cũng có một số trang tổng hợp phiếu giảm giá như: giamua.com, phiếu giảm giá.vn…Tuy nhiên cách thức đưa phiếu giảm giá lên các trang này là do người quản trị đưa thông tin lên một cách thủ công, không phải tự động Đến với trang GiamGia, việc đưa thông tin lên là hoàn toàn tự động, nếu phần mềm thu thập đựơc phiếu giảm giá, trang sẽ đưa thông tin này lên theo một định dạng đã được định sẵn, tạo điều kiện cập nhật nhanh chóng và liên tục cho trang
Trang 6MỤC LỤC
LỜI CÁM ƠN 2
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN 3
NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN 4
LỜI MỞ ĐẦU 5
DANH MỤC CÁC BẢNG BIỂU 8
DANH MỤC CÁC HÌNH VẼ,GIAO DIỆN 9
CHƯƠNG 1: TỔNG QUAN 11
1.Lý do chọn đề tài 11
2.Mục tiêu của đề tài 11
3.Ý nghĩa của đề tài 11
4.Bố cục của đề tài 11
4.1 Bố cục luận văn 11
4.2 Bố cục xây dựng đề tài 12
CHƯƠNG 2: TÌNH HÌNH NGHIÊN CỨU 13
1.Hiện trạng thực tế 13
2.Cơ sở lý thuyết 13
2.2 Phần mềm lấy thông tin phiếu giảm giá 13
2.3 Trang GiamGia 13
3 Sơ đồ tổng thể 14
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ 15
1 Phân tích 15
1.1 Hiện trạng 15
1.2 Yêu cầu 15
1.3 Tính khả thi 16
2 Thiết kế 16
2.1 Chức năng của trang GiamGia 16
2.2 Chức năng chương trình 24
Trang 72.3 Cơ sở dữ liệu 31
2.4 Bố cục trình bày 34
CHƯƠNG 4: CÀI ĐẶT 43
1 Chức năng 43
1.1 Chương trình 43
1.2 Trang web 46
2.Giao diện 51
2.1 Giao diện chương trình 51
2.2.Giao diện trang GiamGia 52
CHƯƠNG 5: KẾT LUẬN 58
1.Kết luận 58
2.Hạn chế của đề tài: 58
3.Hướng phát triển trong tương lai 58
TÀI LIỆU THAM KHẢO 59
1.Tiếng Việt 59
2.Tiếng Anh 59
PHỤ LỤC 60
1.Xpath 60
1.1 Định nghĩa 60
1.2 Cách tìm đường dẫn xml 60
2 HtmlAgilityPack 61
2.1.Giới thiệu 61
2.2 Chức năng 61
Trang 8DANH MỤC CÁC BẢNG BIỂU
Bảng 1 Mô tả bảng xpath 32
Bảng 2 Mô tả bảng vouher_info 33
Bảng 3 Mô tả bảng voucher_type 33
Bảng 4 Mô tả bảng web_info 33
Bảng 5 Mô tả bảng subscriber 34
Bảng 6 Mô tả bảng web_voucher 34
Trang 9DANH MỤC CÁC HÌNH VẼ,GIAO DIỆN
Hình 1 Sơ đồ chức năng của trang GiamGia và chương trình 14
Hình 2 Sơ đồ tuần tự chức năng tìm kiếm cơ bản 17
Hình 3 Sơ đồ chi tiết chức năng tìm kiếm cơ bản 18
Hình 4 Sơ đồ tuần tự chức năng tìm kiếm nâng cao 19
Hình 5 Sơ đồ chi tiết chức năng tìm kiếm nâng cao 19
Hình 6 Sơ đồ tuần tự chức năng gửi email thông báo phiếu giảm giá 21
Hình 7 Sơ đồ chi tiết chức năng gửi email thông báo phiếu giảm giá 21
Hình 8 Sơ đồ tuần tự chức năng ngừng gửi email cho người dùng 22
Hình 9 Sơ đồ chi tiết chức năng ngừng gửi email cho người dùng 23
Hình 10 Sơ đồ tuần tự chức năng đếm số lượng phiếu giảm giá theo thể lọai 24
Hình 11 Sơ đồ chi tiết chức năng đếm số lượng phiếu giảm giá theo thể lọai 24
Hình 12 Sơ đồ chi tiết chức năng thu thập tự động các phiếu giảm giá 26
Hình 13 Sơ đồ chi tiết chức năng thu thập tự động các phiếu giảm giá 27
Hình 14 Sơ đồ tuần tự chức năngdừng thu thập tự động các phiếu giảm giá 28
Hình 15 Sơ đồ chi tiết chức năng dừng thu thập tự động các phiếu giảm giá 28
Hình 16 Sơ đồ tuần tự chức năng quản trị thông tin xpath của trang giảm giá 30
Hình 17 Sơ đồ tuần tự chức năng quản trị thông tin xpath của trang giảm giá 30
Hình 18 Mô hình cơ sở dữ liệu 31
Hình 19 Sơ đồ định hướng cho trang “HOME” 35
Hình 20 Sơ đồ định hướng cho trang “SITE’sVOUCHER” 35
Hình 21 Sơ đồ định hướng cho trang “ARCHIVE” 35
Hình 22.Sơ đồ định hướng cho trang “CONTACT” 36
Hình 23 Sơ đồ định hướng cho trang “tìm kiếm nâng cao” 36
Hình 24 Sơ đồ định hướng cho trang “kết quả tìm kiếm” 36
Hình 25 Sơ đồ phác thảo giao diện trang “HOMEPAGE” 37
Hình 26 Sơ đồ phác thảo giao diện trang “SITE’sVOUCHER” 37
Hình 27 Sơ đồ phác thảo giao diện trang “ARCHIVE” 38
Hình 28 Sơ đồ phác thảo giao diện trang “CONTACT” 38
Hình 29 Sơ đồ phác thảo giao diện trang “RSS” 39
Hình 30 Sơ đồ phác thảo giao diện trang “KẾT QUẢ TÌM KIẾM” 39
Hình 31 Sơ đồ phác thảo giao diện ngưng nhận email 40
Hình 32 Sơ đồ phác thảo mẫu email 40
Hình 33 Sơ đồ định hướng của chương trình 41
Hình 34 Sơ đồ phác thảo giao diện chương trình 42
Hình 35 Sơ đồ mã giả chức năng phân loại 43
Hình 36.Sơ đồ mã giả chức năng chỉnh sửa xpath 44
Trang 10Hình 37 Sơ đồ mã giả chức năng lấy thông tin 45
Hình 38 Sơ đồ mã giả chức năng dừng lấy thông tin 46
Hình 39 Sơ đồ mã giả chức năng tìm kiếm cơ bản 47
Hình 40 Sơ đồ mã giả chức năng tìm kiếm nâng cao 48
Hình 41 Sơ đồ mã giả chức năng gửi email thông báo phiếu giảm giá 49
Hình 42 Sơ đồ mã giả chức năng dừng gửi email thông báo phiếu giảm giá 49
Hình 43 Sơ đồ mã giả chức năng đếm số lượng phiếu 50
Giao diện 1.Giao diện khi khởi động chương trình 51
Giao diện 2 Giao diện chỉnh sửa xpath 52
Giao diện 3 Giao diện trang ‘HOME’ 53
Giao diện 4.Giao diện trang “SITE’sVOUCHER” 54
Giao diện 5 Giao diện trang “ARCHIVE” 54
Giao diện 6 Giao diện trang “CONTACT” 55
Giao diện 7.Giao diện trang “RSS” 55
Giao diện 8 Giao diện trang “tìm kiếm nâng cao” 56
Giao diện 9 Giao diện trang “kết quả tìm kiếm” 56
Giao diện 10.Giao diện form đăng kí email 57
Giao diện 11.Giao diện trang ngưng nhận email từ trang GiamGia 57
Trang 11Việc một trang có khả năng tổng hợp phiếu giảm giá từ nhiều nguồn khác nhau, phân loại phiếu giảm giá hợp lý cộng vơí khả năng tìm kiếm linh hoạt sẽ giúp người dùng tiết kiệm đươc thời gian tìm các phiếu giảm giá ưa thích
2.Mục tiêu của đề tài
Xây dựng được một trang tự động thu thập các thông tin của phiếu giảm giá
từ các nguồn trang bán phiếu giảm giá(như muachung.vn, cungmua.com, nhommua.com, hotdeal.vn, khuyenmaivang.vn) đồng thời trang cũng phân loại sắp xếp các phiếu giảm giá giúp người dùng dễ dàng tìm kiếm các phiếu này
Cung cấp cho người quản trị công cụ để thực hiện việc lấy thông tin, dừng lấy thông tin và chỉnh sửa cấu trúc XPATH của các thành phần trên trang nguồn bán phiếu giảm giá tương ứng Đồng thời cũng phân loại phiếu giảm giá theo từ khoá đã được liệt kê trong chương trình
3.Ý nghĩa của đề tài
Việc ra đời của một trang GiamGia thu thập thông tin phiếu giảm giá tự động
từ nhiều nguồn khác nhau,sẽ giúp cho người dùng giảm thiểu được thời gian trong việc đi vào từng trang nguồn bán phiếu giảm giá,qua đó trang GiamGia cũng giống giúp người dùng dễ dàng tìm kiếm phiếu giảm giá phù hợp cho mình
Bên cạnh đó, chức năng gửi email theo từ khoá yêu thích cho người dùng sẽ giúp cho người dùng luôn cập nhật được những phiếu giảm giá mới nhất, không bị trễ hạn mua hay không mua được vì số lượng người mua đã đủ
4.Bố cục của đề tài
4.1 Bố cục luận văn
Chương 1: Tổng quan về đề tài Chương 2: Tình hình nghiên cứu về đề tài Chương 3: Phân tích thiết kế đề tài
Phân tích khả thi , hiện trạng và yêu cầu đề tai
Thiết kế các chức năng, phác thảo giao diện , cách tổ chức cơ
sở dữ liệu cho chương trình và trang GiamGia
Sơ đồ giao diện , các sơ đồ chức năng Chương 4: Cài đặt chương trình và trang GiamGia
Mô tả giải thuật cho từng chức năng
Cài đặt giao diện cho chương trình và web
Trang 12Chương 5: Kết luận đề tài
Kết quả đạt được
Hạn chế của đề tài
Hướng phát triển đề tài
4.2 Bố cục xây dựng đề tài
Công cụ quản trị thông tin phiếu giảm giá :
Thu thập định kỳ thông tin các phiếu giảm giá mới nhất từ các trang muachung.vn, cungmua.com, nhommua.com …
Phân loại phiếu giảm giá : tự động phân loại các phiếu giảm giá vào các danh mục đã xây dựng sẵn
Quản trị thông tin các phiếu giảm giá thu thập được
Gởi thông tin phiếu giảm giá cho người đăng kí khi có phiếu giảm giá mới hoặc phù hợp với sở thích người dùng
Trang tổng hợp phiếu giảm giá:
Liệt kê phiếu giảm giá : hiển thị thông tin phiếu giảm giá theo các tiêu chí nhất định (ngày, mức độ giảm giá, thời gian còn lại )
Tìm kiếm phiếu giảm giá: hỗ trợ tìm kiếm phiếu giảm giá cơ bản (theo tên) hoặc nâng cao (theo nơi bán, thể loại, mức giảm giá …)
Đăng kí nhận phiếu giảm giá: người dùng đăng kí nhận thông tin các phiếu giảm giá mình quan tâm thông qua email
Trang 13CHƯƠNG 2: TÌNH HÌNH NGHIÊN CỨU
1.Hiện trạng thực tế
Hiện nay trên mạng có hai trang tổng hợp phiếu giảm giá là http://giamua.com/coupon và http://voucher.vn với những ưu và khuyết điểm sau:
Ưu điểm:
◦ Giao diện đơn giản dễ sử dụng
◦ Số lượng phiếu giảm giá thu thập về khá lớn
Khuyết điểm:
◦ Không có chức năng tìm kiếm
◦ Chức năng đăng kí nhận email thông tin giảm giá còn sơ sài
◦ Không tổng hợp thông tin tự động
◦ Hiển thị phiếu giảm giá đã hết hạn
◦ Không phân loại được các phiếu giảm giá theo từng chuyên mục
Từ đó chúng em tin rằng trang thu thập và tổng hợp phiếu giảm giá của đề tài ra đời sẽ giải quyết triệt để những hạn chế của hai trang trên
2.Cơ sở lý thuyết
2.2 Phần mềm lấy thông tin phiếu giảm giá
Phần mềm được viết dựa trên ngôn ngữ: C#.NET 4.0
Thư viện sử dụng bên ngoài: HtmlAgilityPack
Cơ sở dữ liệu: MySQL Server 5.1
Công cụ lập trình: Microsoft Visual Studio 2008 2.3 Trang GiamGia
Trang GiamGia được viết dựa trên ngôn ngữ: PHP
Cơ sở dữ liệu: MySQL Server 5.1
Công cụ lập trình: Adobe Dreamweaver CS3
Trang 143 Sơ đồ tổng thể
Hình 1 Sơ đồ chức năng của trang GiamGia và chương trình
Các chức năng cho người quản trị
Chỉnh sửa đường dẫn xpath
Lấy thông tin
Dừng lấy thông tin
Các chức năng cung cấp cho người dùng
Tìm kiếm
Tìm kiếm cơ bản
Tìm kiếm nâng cao
Đăng kí nhận email thông báo phiếu giảm giá
Ngưng nhận email thông báo phiếu giảm giá
Trang 15CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ
1 Phân tích
1.1 Hiện trạng
1.1.1 Người dùng
Tìm kiếm phiếu giảm giá theo điều kiện mong muốn
Xem tổng quát các thông tin về phiếu giảm giá
Nhận email khi có phiếu giảm giá theo ý thích của mình 1.1.2 Quản trị
Quản lý thông tin phiếu giảm giá
Chỉnh sửa việc lấy thông tin cho phù hợp
Thực hiện lấy, dừng lấy thông tin ở trang chỉ định 1.2 Yêu cầu
1.2.1 Yêu cầu của trang
1.2.1.1 Yêu cầu chức năng
Hỗ trợ tìm kiếm phiếu giảm giá cho người dùng
Đếm số lượng phiếu giảm giá theo thể loại
Loại bỏ các phiếu giảm giá đã hết hạn
Hỗ trợ gửi email cho người dùng khi có phiếu giảm giá theo
ý muốn
1.2.1.2 Yêu cầu phi chức năng
Trang web đơn giản, thân thiện với người dùng
Từng mục thể loại được phân chia rõ ràng
Thông tin phiếu giảm giá được hiển thị theo từng khung 1.2.1.3 Yêu cầu bảo mật
Tránh các lỗi bảo mật hiện nay như sql injection, xss…
Thông tin email người dùng đăng kí trên trang GiamGia cần được bảo mật
1.2.1.4 Yêu cầu tính an toàn Thường xuyên backup cơ sở dữ liệu
1.2.2 Yêu cầu chương trình
1.2.2.1 Yêu cầu chức năng
Hỗ trợ lấy thông tin từ 1 hay nhiều trang giảm giá
Phân loại phiếu giảm giá
Tách thông tin đã lấy
Lưu thông tin lấy được vào cơ sở dữ liệu
Trang 161.2.2.2 Yêu cầu phi chức năng
Chương trình giao diện đơn giản, thân thiện, dễ sử dụng
Quản trị xài chương trình có thể không cần biết nhiều về
cách thức hoạt động của chương trình
Tính năng của chương trình được thể hiện ngay trên các nút
nhấn
1.2.2.3 Yêu cầu bảo mật
Thông tin về cơ sở dữ liệu để chương trình kết nối cần được
Sự quen thuộc với ứng dụng( cao )
Quản trị đã nghiên cứu kỹ về cách lấy thông tin, cách thông tin
về phiếu giảm giá được bố trí như thế nào trên các trang giảm
giá
Sự quen thuộc với trang ( cao )
Người dùng đã quen thuộc với việc xem thông tin các phiếu giảm giá trên từng trang giảm giá riêng trước đó, có thể tìm
kiếm và thực hiện chức năng nhận email trên trang GiamGia
Hiện nay đã có một số trang tổng hợp thông tin phiếu giảm giá được nhiều người dùng vào xem, tuy nhiên vẫn chưa tự động lấy thông tin phiếu , chủ yếu vẫn do quản trị các trang đó tự
2.1 Chức năng của trang GiamGia
2.1.1 Tìm kiếm phiếu giảm giá
Tác nhân chính:Người dùng Trigger:Muốn tìm kiếm phiếu giảm giá Luồng sự kiện chính:
Có 2 loại tìm kiếm là tìm kiếm cơ bản và tìm kiếm nâng cao
Trang 17Tìm kiếm cơ bản:
Người dùng nhập từ khóa vào ô tìm kiếm và chọn nơi sử dụng phiếu giảm giá đang hiển thị trên trang GiamGia.Mặc định trang GiamGia sẽ tìm kiếm theo tên của phiếu giảm giá nếu người dùng không chọn chức năng tìm kiếm nâng cao
Tìm trong cơ sở dữ liệu những phiếu giảm giá có tên trùng với từ khóa người dùng nhập vào
Hiển thị kết quả nếu tìm thấy
Nếu không tìm thấy bất kì kết quả nào, hiện ra thông báo không tìm thấy phiếu giảm giá yêu cầu
: NguoiDung
Form tim kiem
co ban Form tim kiem
co ban
Ham dieu khien thuc hien tim kiem Ham dieu khien thuc hien tim kiem
Co so du lieu
1: Nhap ten phieu muon tim
2: Ten phieu muon tim
3: Lay ten phieu muon tim
4: Kiem tra co phieu nao trung tu khoa
5: Ket qua tra ve 6: Thong bao ket qua
7: Thong bao ket qua
Hình 2 Sơ đồ tuần tự chức năng tìm kiếm cơ bản
Trang 18: NguoiDung
Form tim kiem
co ban
Ham dieu khien thuc
hien tim kiem
Co so du lieu 4: Kiem tra co phieu nao trung tu khoa
1: Nhap ten phieu muon tim
2: Ten phieu muon tim 6: Thong bao ket qua 7: Thong bao ket qua
3: Lay ten phieu muon tim
5: Ket qua tra ve
Hình 3 Sơ đồ chi tiết chức năng tìm kiếm cơ bản
Tìm kiếm nâng cao:
Người dùng bấm chọn tìm kiếm nâng cao trên web nếu không muốn tìm kiếm theo tên
Người dùng điền phần thông tin mình muốn tìm kiếm liên quan đến phiếu giảm giá vào các ô tìm kiếm Thông tin đó là:
Tên phiếu giảm giá
Giá bán thực tế(sau khi đã giảm) của phiếu giảm giá(tìm trong
1 khoảng giá nào đó)
Giá trị của phiếu giảm giá đó
Giảm giá được bao nhiêu % ( cũng trong 1 khoảng nào đó)
Phiếu giảm giá đó thuộc lọai gì
Trang web đăng phiếu giảm giá đó
Nếu người dùng không nhập thông tin vào 1 ô nào đó, mặc định tìm kiếm nâng cao sẽ không tìm theo điều kiện có trong ô đó
So sánh từ khóa người dùng nhập với từ khóa có trong phần thông tin liên quan đến phiếu giảm giá trong cơ sở dữ liệu
Hiển thị kết quả nếu tìm thấy
Nếu không tìm thấy kết quả, hiện ra thông báo không tìm thấy phiếu giảm giá yêu cầu
Trang 19: NguoiDung
Trang chu Form tim kiem
nang cao Form tim kiem nang cao thuc hien tim kiem thuc hien tim kiem
Co so du lieu
1: Chon tim kiem nang cao
2: Hien trang tim kiem nang cao
3: Chon dieu kien tim kiem tren form
4: Nhap ten phieu neu muon
5: Thong tin tim kiem
6: Lay thong tin tim kiem
7: Kiem tra co phieu thoa yeu cau 8: Ket qua tra ve
9: Thong bao ket qua 10: Thong bao ket qua
Hình 4 Sơ đồ tuần tự chức năng tìm kiếm nâng cao
Trang chu
7: Kiem tra co phieu thoa yeu cau
3: Chon dieu kien tim kiem tren form 4: Nhap ten phieu neu muon
1: Chon tim kiem nang cao 2: Hien trang tim kiem nang cao
5: Thong tin tim kiem
9: Thong bao ket qua 10: Thong bao ket qua
6: Lay thong tin tim kiem 8: Ket qua tra ve
Hình 5 Sơ đồ chi tiết chức năng tìm kiếm nâng cao
Trang 202.1.2 Gởi email thông báo phiếu giảm giá
Tác nhân chính:Người dùng Trigger:Khi người dùng muốn trang GiamGia gửi phiếu giảm giá mà mình quan tâm qua email
Luồng các sự kiện:
Người dùng chọn chức năng ‘nhận email thông báo phiếu giảm giá’ trên trang GiamGia
Người dùng nhập email
Người dùng nhập thông tin về phiếu giảm giá mà mình yêu thích
để trang GiamGia gửi email cho người dùng
Nếu người dùng không nhập gì cả thì mặc định khi có phiếu giảm giá mới trang sẽ gửi email cho người dùng
Kiểm tra tính hợp lệ của email( không có khỏang cách, phải có kí
tự @ )
Kiểm tra các phiếu giảm giá có trong cơ sở dữ liệu cũng như các phiếu giảm giá mới cập nhật
Nếu thỏa theo yêu cầu người dùng, sẽ gửi thông tin phiếu giảm giá
đó qua email người dùng đã đăng kí
Ngược lại chờ có phiếu giảm giá thỏa yêu cầu người dùng, khi đó
sẽ gửi thông tin phiếu giảm giá đó qua email
Luồng sự kiện phụ:
Email người dùng nhập không hợp lệ
Người dùng chưa nhập email
Chưa có phiếu giảm giá thỏa yêu cầu Tìên điều kiện :
Người dùng đã nhập email Hậu điều kiện :Trang web trong trạng thái sẵn sàng thực hiện các chức năng khác cho người dùng
Trang 21: NguoiDung
email email dang ki email dang ki email
1: Chon 'nhan email thong bao phieu giam gia'
2: Hien thi form dang ki email
3: Dien thong tin vao form
4: Kiem tra thong tin
5: Thong tin sau khi kiem tra
6: Them thong tin nguoi dung
7: Thong bao ket qua 8: Thong bao ket qua
Hình 6 Sơ đồ tuần tự chức năng gửi email thông báo phiếu giảm giá
: NguoiDung
Trang chu
Form dang ki email
Ham dieu khien dang ki email
Co so du lieu 6: Them thong tin nguoi dung
1: Chon 'nhan email thong bao phieu giam gia' 2: Hien thi form dang ki email
3: Dien thong tin vao form 8: Thong bao ket qua
4: Kiem tra thong tin
5: Thong tin sau khi kiem tra 7: Thong bao ket qua
Hình 7 Sơ đồ chi tiết chức năng gửi email thông báo phiếu giảm giá
2.1.3 Ngừng gửi email cho người dùng
Tác nhân chính:Người dùng
Trang 22Trigger:Khi người dùng không muốn nhận email từ trang GiamGia nữa
: NguoiDung
Email nhan duoc Email nhan duoc
Trang ngung nhan email Trang ngung nhan email
Cac ham dieu khien ngung goi email Cac ham dieu khien ngung goi email
Co so du lieu
1: Chon 'ngung nhan email'
2: Thong tin nguoi dung
3: Lay thong tin nguoi dung
4: Xoa email nguoi dung 5: Thong bao ket qua
6: Thong bao ket qua
Hình 8 Sơ đồ tuần tự chức năng ngừng gửi email cho người dùng
Trang 23: NguoiDung
Email nhan duoc Cac ham dieu khien ngung goi email
Co so du lieu
Trang ngung nhan email
4: Xoa email nguoi dung
1: Chon 'ngung nhan email' 2: Thong tin nguoi dung
3: Lay thong tin nguoi dung
5: Thong bao ket qua 6: Thong bao ket qua
Hình 9 Sơ đồ chi tiết chức năng ngừng gửi email cho người dùng
2.1.4 Đếm số lượng phiếu giảm giá theo thể lọai
Tác nhân chính:Trang web Trigger:Khi có thêm phiếu giảm giá mới trong cơ sở dữ liệu Luồng các sự kiện:
Xác định phiếu giảm giá thuộc thể lọai nào
Tăng số lượng phiếu giảm giá thuộc thể lọai tương ứng tùy vào số phiếu giảm giá mới có
Luồng sự kiện phụ:
Tìên điều kiện :
Có phiếu giảm giá mới Hậu điều kiện :Trang web trong trạng thái sẵn sàng thực hiện các chức năng khác cho người dùng
Trang 24Cac ham dieu khien viec dem
1: Kiem tra phieu giam gia moi
Có 6 lọai phiếu giảm giá trên trang GiamGia là :
Trang 25 So từ khoá được khởi tạo với tiêu đề phiếu giảm giá
Nếu có từ khoá trong tiêu đề phiếu giảm giá, xếp phiếu giảm giá vào loại tương ứng với từ khoá
Nếu không có từ khoá nào trong tiêu đề phiếu giảm giá, xếp phiếu giảm giá đó vào lọai ‘khác’
Luồng sự kiện phụ:
Tiền điều kiện:
Có ít nhất 1 phiếu giảm giá để phân loại Hậu điều kiện:Chương trình trong trạng thái sẵn sàng thực hiện các chức năng khác cho người quản trị
2.2.1 Thu thập tự động các phiếu giảm giá
Tác nhân chính:Quản trị Trigger:Khi chọn 1 hay nhiều trang phiếu giảm giá muốn thu thập Luồng sự kiện chính:
Chọn 1 hay trang phiếu giảm giá muốn thu thập thông tin sau:
Kiểm tra xem có phiếu giảm giá nào mới không
Nếu có, sẽ tiến hành cập nhật cho trang GiamGia của mình Thông tin cập nhật gồm thông tin mới nhất của phiếu giảm giá có trong web đó, bao gồm:
Tên phiếu giảm giá
Tình trạng phiếu (còn mua được phiếu giảm giá hay không?)
Số lượng người đã mua phiếu giảm giá đó
Ngày đăng
Thời gian còn lại
Nơi sử dụng phiếu giảm giá
Giá thực tế
Giá bán
Giảm giá được bao nhiêu %
Địa chỉ trang đăng phiếu giảm giá
Trang 26 Địa chỉ chi tiết trang phiếu giảm giá
Địa chỉ trang mua
Nếu không có phiếu giảm giá mới,sẽ không cập nhật cho web mình mà tiếp tục đi qua trang nguồn bán phiếu giảm giá khác để bắt đầu lại quá trình kiểm tra phiếu giảm giá mới nhất và cập nhật nếu có
Khi đã có phiếu giảm giá mới nhất, tiến hành phân lọai phiếu giảm giá theo chức năng ‘phân lọai phiếu giảm giá’
Trường hợp phiếu giảm giá hết hạn, không hiển thị phiếu giảm giá
đó trên trang chính, mà hiển thị trang đó trên trang “archive” tức trang chứa các phiếu giảm giá hết hạn
Luồng sự kiện phụ:
Phiếu giảm giá hết hạn
Chưa có phiếu giảm giá mới Tiền điều kiện:
Hậu điều kiện:Trang web trong trạng thái sẵn sàng cập nhật thêm phiếu giảm giá
: QuanTri
Form chinh Cac ham dieu khien
lay thong tin Cac ham dieu khien lay thong tin
Co so du lieu
1: Chon trang muon lay
2: Trang muon lay
3: Lay dia chi trang va xpath 4: Dia chi trang va xpath 5: Lay thong tin phieu giam gia theo trang chi dinh
6: Thong tin phieu giam gia
7: Cap nhat co so du lieu
Hình 12 Sơ đồ chi tiết chức năng thu thập tự động các phiếu giảm giá
Trang 27: QuanTri
Form chinh
Cac ham dieu khien
lay thong tin
Co so du lieu 5: Lay thong tin phieu giam gia theo trang chi dinh 7: Cap nhat co so du lieu
1: Chon trang muon lay
2: Trang muon lay
3: Lay dia chi trang va xpath 6: Thong tin phieu giam gia 4: Dia chi trang va xpath
Hình 13 Sơ đồ chi tiết chức năng thu thập tự động các phiếu giảm giá
2.2.3 Dừng thu thập tự động các phiếu giảm giá
Tác nhân chính:Quản trị Trigger:Khi chọn 1 hay nhiều trang phiếu giảm giá muốn dừng thu thập
Tiền điều kiện:Trang web muốn dừng đang lấy thông tin Hậu điều kiện:Trang web trong trạng thái sẵn sàng cập nhật thêm phiếu giảm giá
Trang 28: QuanTri
Form chinh Cac ham dieu khien
dung lay thong tin
Cac ham dieu khien dung lay thong tin
Co so du lieu
1: Chon trang muon dung lay
2: Trang muon dung lay
3: Lay dia chi trang 4: Dia chi trang 5: Dung lay thong tin trang
Hình 14 Sơ đồ tuần tự chức năngdừng thu thập tự động các phiếu giảm giá
: QuanTri
Form chinh
Cac ham dieu khien
dung lay thong tin
Co so du lieu 5: Dung lay thong tin trang
1: Chon trang muon dung lay
2: Trang muon dung lay
3: Lay dia chi trang
4: Dia chi trang
Hình 15 Sơ đồ chi tiết chức năng dừng thu thập tự động các phiếu giảm giá
2.2.4 Quản trị thông tin xpath của trang giảm giá
Tác nhân chính:Người quản trị Trigger:Muốn chỉnh sửa thông tin xpath của trang giảm giá Luồng sự kiện chính:
Trang 29 Chọn chức năng chỉnh sửa xpath
Chọn 1 hay trang phiếu giảm giá muốn chỉnh sửa:
Hiển thị thông tin xpath phiếu giảm giá tương ứng với các mục:
Tên phiếu giảm giá
Tình trạng phíêu
Số người đã mua phiếu
Thời gian còn lại
Nơi sử dụng phiếu giảm giá
Giá gốc
Giá bán
Giảm giá được bao nhiêu %
Địa chỉ trang đăng phiếu giảm giá
Chỉnh sửa thông tin xpath theo ý muốn
Lưu thông tin đã chỉnh Luồng sự kiện phụ:
Tiền điều kiện:
Hậu điều kiện:
Chương trình trong trạng thái sẵn sàng thực hiện các chức năng khác cho người quản trị
Trang 30: QuanTri
xpath xpath Cac ham dieu khien Cac ham dieu khien chinh sua xpathchinh sua xpath1: Chon chuc nang chinh sua xpath
2: Hien thi form chinh sua
3: Chon trang muon chinh sua
4: Trang muon chinh sua
5: Lay trang da chon 6: Xpath cua trang da chon 7: Hien thi xpath
8: Chinh sua xpath
9: Xpath sau khi chinh
10: Lay xpath da chinh
11: Cap nhat co so du lieu
Hình 16 Sơ đồ tuần tự chức năng quản trị thông tin xpath của trang giảm giá
: QuanTri
Form chinh
Cac ham dieu khien chinh sua xpath
Co so
du lieu
Form chinh sua xpath
11: Cap nhat co so du lieu
1: Chon chuc nang chinh sua xpath
2: Hien thi form chinh s ua
3: Chon trang muon chinh sua 8: Chinh sua xpath
5: Lay trang da chon 10: Lay xpath da chinh 6: Xpath cua trang da chon
4: Trang muon chinh sua 9: Xpath s au khi chinh
7: Hien thi xpath
Hình 17 Sơ đồ tuần tự chức năng quản trị thông tin xpath của trang giảm giá