TÓM TẮT Mục tiêu của đề tài là tìm hiểu ngôn ngữ Groovy và framework web Grails; tìm ra điểm tương đồng của Groovy với Java, việc sử dụng API và những gì Java đã có để sử dụng cho việc t
Trang 1TRƯỜ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 NGÔN NGỮ GROOVY VÀ FRAMEWORK WEB GRAILS, XÂY DỰNG WEBSITE THƯƠNG MẠI ĐIỆN TỬ
Ngành: Công nghệ thông tin Niên khóa: 2007 – 2011 Lớp: DH07DTH
Trang 2TRƯỜ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 NGÔN NGỮ GROOVY VÀ FRAMEWORK WEB GRAILS, XÂY DỰNG WEBSITE THƯƠNG MẠI ĐIỆN TỬ
Giáo viên hướng dẫn: Sinh viên thực hiện:
Nguyễn Đắc Khoa Phan Thị Ngọc Quyền Nguyễn Thụy Vy
TP.HỒ CHÍ MINH, tháng 9 năm 2011
Trang 4
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: Thạc sĩ Mai Anh Thơ
Cán bộ phản biện: Thạc sĩ Nguyễn Thanh Phước
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 31 tháng 08 năm 2011
Trang 5NHIỆM VỤ LUẬN VĂN CỬ NHÂN
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập-Tự Do-Hạnh Phúc
Bộ Giáo Dục và Đào Tạo
Trường ĐH NÔNG LÂM TpHCM
Họ tên sinh viên: CHẾ THỊ NGỌC DUYÊN
Ngày tháng năm sinh: 20/02/1989
Chuyên ngành: Hệ thống thông tin
Phái: Nữ
Nơi sinh: Tiền Giang Ngành: Công nghệ thông tin
Họ tên sinh viên: NGUYỄN ĐẮC KHOA
Ngày tháng năm sinh: 24/10/1989
Chuyên ngành: Hệ thống thông tin
Phái: Nam
Nơi sinh: Thành phố Hồ Chí Minh Ngành: Công nghệ thông tin
Họ tên sinh viên: PHAN THỊ NGỌC QUYỀN
Ngày tháng năm sinh: 09/08/1988
Chuyên ngành: Hệ thống thông tin
Phái: Nữ
Nơi sinh: Tiền Giang Ngành: Công nghệ thông tin
Họ tên sinh viên: NGUYỄN THỤY VY
Ngày tháng năm sinh: 30/05/1989
Chuyên ngành: Hệ thống thông tin
Phái: Nữ
Nơi sinh: Đồng Tháp Ngành: Công nghệ thông tin
Trang 6I TÊN ĐỀ TÀI: Tìm hiểu ngôn ngữ Groovy và Framework web Grails Xây dựng
Website thương mại điện tử
II NHIỆM VỤ VÀ NỘI DUNG
Nguyễn Thụy Vy nghiên cứu tìm hiểu về ngôn ngữ Groovy và những điểm giống nhau giữa Groovy và Java
Phan Thị Ngọc Quyền nghiên cứu kiến trúc và mô hình MVC của Grails
Nguyễn Đắc Khoa nghiên cứu cách mapping đối tượng vào cơ sở dữ liệu và hiện thực mapping với website Shopping Online
Chế Thị Ngọc Duyên nghiên cứu cách tương tác trong MVC của Grails để gắn View có sẵn để hiện thực Website Shopping Online cùng với các thành viên trong nhóm
III NGÀY GIAO NHIỆM VỤ: 19/12/2010
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 30/07/2011
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Thạc sĩ Mai Anh Thơ
Ngày / /
CÁN BỘ HƯỚNG DẪN
Ngày / / KHOA CNTT
Ngày / / CHỦ NHIỆM CHUYÊN NGÀNH
Trang 7
LỜI CẢM TẠ
Sau thời gian nỗ lực nghiên cứu, tìm hiểu và thực hiện luận văn này đã
hoàn thành Ngoàisự cố gắng hết mình của bản thân , chúng em đã nhận được rất nhiều sự khích lệ của nhà trường, thầy cô và bạn bè Đây là thời điểm tốt nhất chúng em có dịp được bày tỏ lòng biết ơn sâu sắc của mình đến những
thầy cô, người thân đã giúp đỡ, động viên trong suốt quá trình thực hiện luận văn này
Trước tiên, chúng em xin chân thành cám ơn Quý thầy cô Khoa Công
nghệ thông tinTrường đại học Nông Lâm đã truyền đạt những kiến thức
quý báo cho chúng em trong suôt quá trình học tập tại trường
Đăc biệt, chúng em xin bày tỏ lòng cảm ơn chân thành đến cô Mai Anh Thơ,
người đã tận tình hướng dẫn, theo dõi và giúp đỡ chúng em trong suốt quá trình thực hiện luận văn này
Xin cảm ơn tất cả bạn bè đã động viên , giúp đỡ chúng tôi trong suốt quá
trình học tập và hoàn thành tốt luận văn này Một lần nữa chúng em xin gửi lời
tri ân và kính chúc Quý thầy cô Khoa Công nghệ thông tin dồi dào sức khỏe
và thành đạt
TP Hồ Chí Minh, ngày … tháng… năm 2011
Nhóm Sinh viên thực hiện:
Chế Thị Ngọc Duyên Nguyễn Đắc Khoa
Phan Thị Ngọc Quyền Nguyễn Thụy Vy
Trang 8DANH SÁCH CHỮ VIẾT TẮT
CSDL Cơ sở dữ liệu
FAQ Frequently Asked Question
MVC Model View Controller
TMĐT Thương mại điện tử
Trang 9DANH MỤC CÁC HÌNH
Hình 2 1 Trang chủ Amazon 11
Hình 2 2 Trang chủ eBay 13
Hình 2 3 Trang chủ Yoox 14
Hình 2 4 Trang chủ Forever21 15
Hình 2 5 Trang chủ Én bạc 17
Hình 2 6 Trang chủ Chợ điện tử 18
Hình 2 7 Trang chủ 123mua 20
Hình 2 8 Trang chủ Vật giá 21
Hình 2 9 Trang chủ Online Shopping 23
Hình 3 1 Những thành phần cần thiết để phát triển một Project Web Java 27
Hình 3 2 Quy trình để phát triển một Project Web Java 28
Hình 3 3 Những thành phần cần thiết để phát triển một Project Web Grails 29
Hình 3 4 Quy trình để phát triển một Project Web Grails 30
Hình 3 5 Kiến trúc của framework Grails 32
Hình 3 6 Sự tương tác giữa Model, View, Controller và Database 34
Hình 3 7 Tạo một Project Grails 41
Hình 3 8 Những vấn đề về tên của Project 42
Hình 3 9 Cấu trúc một số thư mục chuẩn của Grails Project 42
Hình 3 10 Cấu trúc thư mục Project Grails trong Springsource 43
Hình 3 11 Tạo domain class với Springsource 45
Hình 3 12 Tạo Controller với Springsource 46
Hình 3 13 Cấu hình thông số database và driver 48
Hình 3 14 Thay đổi thông số cổng khi chạy ứng dụng 49
Hình 3 15 Thao tác với ứng dụng 50
Hình 3 16 Minh họa về mối quan hệ giữa các Domain Class trong ứng dụng 51
Hình 3 17 Các loại quan hệ trong Grails 54
Hình 3 18 Hiện thực mối quan hệ của các Domain Class 55
Hình 3 19 Quá trình tương tác giữa View và Controller 58
Hình 3 20 Các hình thức hiển thị của View 59
Hình 3 21 Triệu gọi các phương thức có sẵn 60
Hình 3 22 Sử dụng layout trong view 61
Hình 3 23 Sử dụng bộ thẻ tag lib với tiền tố “g” 62
Hình 3 24 Các khai báo Tag Lib 62
Hình 3 25 Action trong Controller 63
Trang 10Hình 3 26 Action trong Controller 63
Hình 3 27 Trang list view 64
Hình 3 28 Trang show view 65
Hình 3 29 Tương tác giữa action trong Controller và View 66
Hình 3 30 Trang create view 67
Hình 3 31 Controller với action save 67
Hình 3 32 Các plugin Grails hỗ trợ 68
Hình 4 1 Class Diagram của toàn bộ hệ thống 70
Hình 4 2 Usecase tổng quát 71
Hình 4 3 Sơ đồ Activity của toàn bộ hệ thống 84
Hình 4 4 Sơ đồ trạng thái của Giỏ hàng 85
Hình 4 5 Sơ đồ mối quan hệ trong CSDL 86
Hình 4 6 Sơ đồ tổng quát của toàn bộ hệ thống 89
Trang 11DANH MỤC CÁC BẢNG
Bảng 1 Đánh giá chức năng các trang web đã khảo sát 25 Bảng 2 Tính năng một số thư mục quan trọng trong một Project Grails 44 Bảng 3 Mô tả sơ lược các trang web của website Shopping Online 90
Trang 12TÓM TẮT
Mục tiêu của đề tài là tìm hiểu ngôn ngữ Groovy và framework web Grails; tìm ra điểm tương đồng của Groovy với Java, việc sử dụng API và những gì Java đã có để sử dụng cho việc tìm hiểu ngôn ngữ này; tìm hiểu kiến trúc framework web Grails và mô hình MVC dựa trên framework này; sử dụng ngôn ngữ Groovy và ngôn ngữ Java, kết hợp để xây dựng ứng dụng TMĐT
Bên cạnh đó, một việc cũng rất quan trọng là xây dựng ứng dụng dựa theo những tiêu chuẩn gì Với những nghiên cứu của tổ chức itida – Developing IT in Egyptvề các chuẩn TMĐT và việc khảo sát những website hàng đầu của Thế giới và ở Việt Nam thì liệu các website đó đã tuân theo những chuẩn đó chưa, tìm ra ưu - nhược điểm của từng trang để hoàn thiện hơn ứng dụng của mình
Sau đó, tiến hành cài đặt framework và triển khai xây dựng ứng dụng dựa theo những tiêu chuẩn đã được đánh giá Việc nhận yêu cầu, phân tích yêu cầu và tiến hành cài đặt phải thực hiện dựa trên những gì đã phân tích, sử dụng tối đa những gì mà Grails hỗ trợ Những khó khăn trong quá trình xây dựng phải xác định cụ thể là xuất phát từ đâu, do khả năng tìm hiểu một framework mới hay thực sự Grails là framework không phải là lựa chọn tối ưu cho ứng dụng dạng này Sau cùng, luận văn tiến hành đánh giá những chức năng đã cài đặt được đã đạt chuẩn chưa và đưa ra hướng phát triển trong tương lai
Trang 13Mục lục
Chương 1:Mở đầu 1
1.1 Lý do chọn đề tài: 1
1.2 Mục đích: 2
1.3 Đối tượng nghiên cứu: 2
1.4 Phạm vi nghiên cứu: 3
1.5 Quá trình nghiên cứu: 3
1.6 Cấu trúc luận văn: 4
Chương 2: Khảo sát hiện trạng 6
2.1 Tìm hiểu về TMĐT: 6
2.1.1 Yêu cầu chức năng online shopping: 6
2.1.1.1 Giao diện người dùng 6
2.1.1.2 Quản lý thể loại 6
2.1.1.3 Quản lý sản phẩm 7
2.1.1.4 Quản lý hàng tồn kho 7
2.1.1.5 Chính sách khuyến mãi 8
2.1.1.6 Giảm giá 8
2.1.1.7 Giỏ hàng 8
2.1.1.8 Quản lý khách hàng 9
2.1.1.9 Quá trình đặt hàng 9
2.1.1.10 Các chức năng tổng quát 9
2.1.1.11 Chức năng hỗ trợ 10
2.1.1.12 Marketing 10
2.1.2 Yêu cầu phi chức năng 10
2.1.2.1 Quản lý hệ thống cơ sở 10
2.1.2.2 Bảo mật 10
2.1.2.3 Đóng gói 10
2.1.2.4 Kiểm tra 11
Trang 142.2 Khảo sát một số website: 11
2.2.1 Khảo sát 11
2.2.1.1 Khảo sát một số website TMĐT trên Thế giới: 11
2.2.1.2 Khảo sát một số website TMĐT ở Việt Nam: 16
2.2.2 Đánh giá chức năng các trang web đã khảo sát 24
Chương 3: Groovy và Grails 26
3.1 Đặc điểm nổi bật của Groovy: 26
3.2 Kiến trúc web framework Grails: 26
3.2.1 Sự ra đời của Framework Grails: 26
3.2.2 Đặc điểm của Framework Grails: 30
3.2.3 Kiến trúc: 32
3.2.4 Mô hình MVC: 33
3.2.4.1 Domain ( Model ): 35
3.2.4.2 Controller: 36
3.2.4.3 View: 37
3.3 Cách triển khai một ứng dụng Web theo mô hình MVC: 40
3.3.1 Quá trình cài đặt và set biến môi trường (xem phụ lục A) 40
3.3.2 Các bước chính để xây dựng một ứng dụng web Grails: 40
3.3.2.1 Tạo ra project Grails: 40
3.3.2.2 Cấu trúc thư mục của project: 42
3.3.2.3 Tạo domain class: 44
3.3.2.4 Thêm field cho domain class (thuộc tính) 45
3.3.2.5 Tạo controller và bật chức năng scaffold: 46
3.3.2.6 Cấu hình, thay đổi thông số database và driver: 47
3.3.2.7 Chạy ứng dụng: 49
3.3.2.8 Sử dụng, thao tác trên ứng dụng: 50
3.3.3 Domain Modeling in GORM: 51
3.3.3.1 Minh họa về relationship: 51
3.3.3.2 Các thuộc tính của model và ràng buộc dữ liệu: 51
Trang 153.3.3.3 Quản lý các quan hệ: 54
3.3.3.4 Mappings: 55
3.3.3.5 Querying with GORM: 56
3.3.3.6 Hibernate XML và Annotations: 57
3.3.4 Grails Controllers and Groovy Server Pages: 58
3.3.4.1 Tổng quan: 58
3.3.4.2 Controller: 58
3.3.4.3 Tổng quan về view Groovy Server Pages (gsp): 61
3.3.4.3.1 Layout: 61
3.3.4.3.2 Tag lib: 61
3.3.4.3.3 Cách tương tác giữa controller và view: 63
3.3.4.3.4 Plugins: 68
Chương 4: Xây Dựng Ứng Dụng TMĐT 69
4.1 Xây dựng ứng dụng: 69
4.1.1 Phát biểu bài toán: 69
4.1.2 Xác định yêu cầu: 69
4.2 Class Diagram: 70
4.3 Usecase Diagram tổng quát của toàn bộ hệ thống: 71
4.4 Đặc tả Usecase: 71
4.4.1 Usecase Đăng ký 71
4.4.2 Usecase Đăng nhập 73
4.4.3 Usecase Đăng xuất 74
4.4.4 Usecase Tìm kiếm 74
4.4.5 Usecase Xem thông tin sản phẩm 75
4.4.6 Usecase Đánh giá sản phẩm 76
4.4.7 Usecase Cập nhật số lượng giỏ hàng 77
4.4.8 Usecase Thanh toán 79
4.4.9 Usecase Quản lý Hình ảnh sản phẩm 81
4.5 Activity Diagram tổng quát của toàn bộ hệ thống: 84
Trang 164.6 Sơ đồ trạng thái của Giỏ hàng: 85
4.7 Sơ đồ Relationship trong Database: 86
4.7.1 Mô tả các bảng trong CSDL: 86
4.7.1.1 Bảng nguoidung 86
4.7.1.2 Bảng nhomnguoidung 87
4.7.1.3 Bảng sanpham 87
4.7.1.4 Bảng theloai 87
4.7.1.5 Bảng phieukhuyenmai 87
4.7.1.6 Bảng giamgia 88
4.7.1.7 Bảng chitietgiamgia 88
4.7.1.8 Bảng hoadon 88
4.7.1.9 Bảng chitiethoadon 88
4.7.2 Sơ đồ tổng quát của hệ thống: 89
Chương 5: Đánh giá, Hướng Phát Triển 91
5.1 Đánh giá: 91
5.1.1 Kết quả đạt được: 91
5.1.1.1 Về kiến thức: 91
5.1.1.2 Về Ứng dụng – Website Shopping Online: 91
5.1.2 Nhận xét: 92
5.1.3 Những hạn chế: 93
5.2 Hướng phát triển: 93
TÀI LIỆU THAM KHẢO 95
PHỤ LỤC A: HƯỚNG DẪN CÀI ĐẶT GRAILS 96
PHỤ LỤC B:CÁC CHỨC NĂNG CHÍNH CỦA WEBSITE 113
PHỤ LỤC C: HƯỚNG DẪN DEPLOY LÊN HOST 158
Trang 17Chương 1:Mở đầu
Trong thời đại mọi sự việc thật xung quanh đều được vi tính hóa thì không ai có thể phủ nhận vai trò của CNTT trong cuộc sống CNTT có mặt ở khắp mọi nơi, ta có thễ dễ dàng tìm thấy ứng dụng CNTT ở trường học (Word, Excel, PowerPoint…), ở công sở (Word, Excel, Calculator…) hay thậm chí đến cả một học sinh tiểu học cũng đã bập bẹ nhấp chuột, dù chỉ để chơi game Thế nhưng, một lĩnh vực có thể coi là thu hút được sự quan tâm của lập trình viên hơn cả đó là việc xây dựng website, vì ngày nay, hầu như mọi giao dịch, công việc đều đang được thực hiện và nhân rộng trên internet Các cửa hàng từ việc chỉ quản lý kinh doanh bằng ứng dụng CNTT trên desktop thông thường, giờ đây đã chuyển sang quản lý trên cả internet, một mặt là vì để bắt kịp trào lưu, một mặt là vì nắm được tâm lý “nhanh, gọn, lẹ” của con người ngày nay
Các công nghệ hỗ trợ cho việc viết một trang web đẹp và tiện ích xuất hiện ngày càng nhiều, nhưng được ưa dùng hơn cả có lẽ là Java – ngôn ngữ lập trình tiên phong cho hàng loạt các ngôn ngữ mang hơi hướng Java ra đời sau này Việc nghiên cứu một ngôn ngữ mới ngoài Java là một việc làm hữu ích và cần thiết cho đội ngũ lập trình viên, tiếp thu thêm kiến thức và kĩ năng trong lĩnh vực CNTT là một điều không hề dư thừa, nếu không nói là rất cần thiết
Khi bắt tay vào nghiên cứu, để dễ dàng, chúng ta nên chọn những ngôn ngữ nói trên vì như thế sẽ thuận tiện hơn cho việc học hỏi Groovy trên nền framework Grails có thể được xem là một lựa chọn tối ưu Vì một số
ưu điểm nổi bật của nó như: cách viết gần gũi, thân thuộc cho lập trình viên, cú pháp nhỏ gọn, dễ đọc, sử dụng API và thư viện Java…
Trang 181.2 Mục đích:
- Tìm hiểu sự ra đời của ngôn ngữ Groovy
- Những đặc điểm nổi bật hơn so với Java để chỉ ra Groovy có gì tiến bộ hơn so với nền tảng ra đời của nó Cách biên dịch một lớp Groovy giống hay khác so với lớp Java
- Các đặc điểm và cách sử dụng một ngôn ngữ lập trình mới để xây dựng ứng dụng
- Tìm hiểu về framework web Grails, kiến trúc của Grails, đặc biệt là
mô hình MVC của Grails
- Cách cấu hình, cài đặt để sử dụng Groovy và Grails trên IDE Spring Source Tool Suite
- Sử dụng tối đa những gì mà Grails hỗ trợ, về CSDL, về view, và về khả năng quản lý các đối tượng
- Tìm hiểu các chuẩn TMĐT đã được itida – Developing IT in Egypt nghiên cứu
- Tiến hành khảo sát một số website TMĐT tiêu biểu trên thế giới và Việt Nam, so sánh với các chuẩn đã tìm hiểu
- Nghiên cứu cách triển khai một ứng dụng web TMĐT với framework web Grails kết hợp sử dụng ngôn ngữ Groovy căn cứ theo các chuẩn
về TMĐT
- Đánh giá những gì đã đạt được từ việc sử dụng framework này và những hướng phát triển trong tương lai
- Sự phát triển của ngôn ngữ Groovy trên nền tảng Java
- Sự khác biệt cơ bản giữa hai ngôn ngữ đó về quy ước về cách gọi hàm, phạm vi biến, cách biên dịch và tất cả API có điểm tương đồng
và khác biệt gì so với Java
Trang 19- Kiến trúc của framework web Grails và hoạt động của mô hình MVC trong Grails.Những tính năng mà Grails hỗ trợ
- Các chuẩn của website TMĐT
- Các website TMĐT được đánh giá cao trên thế giới và ở Việt Nam
- Triển khai một ứng dụng TMĐT theo các chuẩn đã nghiên cứu sử dụng ngôn ngữ Groovy và framework Grails
- Nghiên cứu về ngôn ngữ Groovy và framework web Grails
- Các tiêu chuẩn về website TMĐT và việc triển khai ứng dụng theo các chuẩn đó
- Tính khả mở khi sử dụng framework này để triển khai ứng dụng Có thể kết hợp với các framework mã nguồn mở khác dễ dàng không
Quá trình nghiên cứu luận văn của nhóm em được chia làm ba giai đoạn:
- Giai đoạn 1: Tìm hiểu lý thuyết của ngôn ngữ Groovy và framework Grails Giai đoạn này bao gồm các công việc sau:
Tìm hiểu Groovy là gì? Nó có những ưu điểm, nhược điểm gì?
Grails là gì? Tại sao Grails lại ra đời?
Cách cấu hình, cài đặt Groovy và Grails
Cách triển khai một ứng dụng web bằng Groovy trên nền Grails
- Giai đoạn 2: Tìm hiểu về các chuẩn cơ bản của TMĐT Khảo sát hiện trạng của các trang web TMĐT ở Việt Nam và thế giới Giai đoạn này bao gồm các công việc sau :
Tìm hiểu một số tài liệu của các tổ chức uy tín về TMĐT
Khảo sát một số trang web TMĐT ở Việt Nam và thế giới Rút ra những nhận xét về ưu điểm, khuyết điểm của những trang web đó
Dựa trên những ưu khuyết điểm rút ra được, nêu khái quát những chức năng
cơ bản cần có của TMĐT
Trang 20- Giai đoạn 3: Triển khai ứng dụng Online Shopping trên Groovy và Grails Giai đoạn này gồm các bước sau:
Phân tích use case, thiết kế giao diện
Thiết kế và cài đặt class model và relational data model
Triển khai hệ thống và kiểm tra lỗi
Deploy lên host
Đề tài nghiên cứu gồm 5 chương:
CHƯƠNG 1: MỞ ĐẦU
- Trình bày sự cần thiết của đề tài, lý do chọn đề tài, mục tiêu nghiên cứu, đối tượng nghiên cứu, phạm vi nghiên cứu và cấu trúc của luận văn
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG:
- Nêu ra các tiêu chuẩn đánh giá webiste TMĐT
- Khảo sát, đánh giá một số website TMĐT được bình chọn hiện nay trên Thế giới và ở Việt Nam
CHƯƠNG 3: GROOVY VÀ GRAILS
- Tìm hiểu sự ra đời của Groovy, so sánh với Java
- Sự ra đời của Grails
- Kiến trúc của Grails, cách tương tác trong mô hình MVC của Grails
CHƯƠNG 4: BÀI TOÁN ỨNG DỤNG – XÂY DỰNG ỨNG DỤNG SHOPPING ONLINE
- Phát biểu bài toán, xác định yêu cầu của chức năng hệ thống
- Phân tích, đặc tả usecase
- Phân tích, đặc tả từng bảng trong CSDL
- Thiết kế lược đồ lớp, lược đồ hoạt động
Trang 21CHƯƠNG 5: ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN
- Các kết quả đạt được trong quá trình làm
- Nhận xét rút ra từ những kết quả đạt được
- Những hạn chế còn tồn lại
- Hướng phát triển trong tương lai
Trang 22Chương 2: Khảo sát hiện trạng
Theo itida – Developing IT in Egypt để xây dựng một ứng dụng TMĐT cần tuân theo những yêu cầu sau:
2.1.1 Yêu cầu chức năng online shopping:
2.1.1.1 Giao diện người dùng
Giao diện người dùng cần phải đáp ứng các chức năng sau:
- Xác định mẫu giao diện trước khi thiết kế
- Người quản trị có thể quản lý toàn bộ nội dung trang web trong khu vực quản trị
- Có thể upload và tùy chỉnh logo, tên website
- Có thể upload và tùy chỉnh ngôn ngữ, hình ảnh,nút nhấn
- Thiết kế giao diện website bằng CSS thích hợp
2.1.1.2 Quản lý thể loại
- Thêm / cập nhật / xóa các thể loại
- Tạo không giới hạn số thể loại và thể loại con
- Kiểm soát thứ tự các thể loại sẽ được hiển thị
- Thu nhỏ hình ảnh tải lên
- Mô tả thể loại
- Ẩn/hiện một số thể loại
- Duyệt theo thể loại hoặc theo sản phẩm của nhà cung cấp
- Phân loại sản phẩm theo giá
Trang 232.1.1.3 Quản lý sản phẩm
- Thêm / cập nhật / xóa sản phẩm
- Chỉnh sửa chi tiết các sản phẩm
- Sản phẩm được tạo ra thong qua giao diện tương tác trực quanWYSIWYG (What You See Is What You Get)
- Upload nhiều hình ảnh liên quan tới sản phẩm
- Mô tả sản phẩm
- Kích cỡ sản phẩm
- Trọng lượng sản phẩm
- Giá niêm yết và giá bán hàng
- Điện thoại/Email trên sản phẩm để thương lượng giá cả
- Thông báo số lượng tồn kho
- Phóng to hình ảnh sản phẩm
- Điều chỉnh giáhàng loạt
- Sự dụng tối đa các thành phần như: radio button, combobox và checkbox…để quản lý sản phẩm
- Khả năng thiết lập giá trị, số lượng mặc định trên trang chi tiết sản phẩm
- Hỗ trợ thêm một sản phẩm vào nhiều thể loại
- Hiển thị sản phẩm liên quan
- Khả năng ẩn/hiện các sản phẩm
- Số lượng đặt hàng tối thiểu cho mỗi sản phẩm
- Kiểm soát thứ tự các sản phẩm sẽ được hiển thị
- Tự động thay đổi kích thước hình ảnh sản phẩm
- Đăng sản phẩm và xem số lượng khách hàng truy cập vào từng sản phẩm
2.1.1.4 Quản lý hàng tồn kho
- Quản lý hàng tồn kho
- Thông báo sắp hết hàng
Trang 24- Quy định mức cảnh báo
- Cập nhật thông tin tồn kho theo lô hàng
2.1.1.5 Chính sách khuyến mãi
- Hệ thống quản lý toàn bộ thông tin phiếu khuyến mãi
- Thông tin chi tiết khi sử dụng phiếu khuyến mãi
- Tạo không giới hạn số lượng phiếu khuyến mãi
- Giá trị khuyến mãi có thể là một tỷ lệ phần trăm hoặc một số tiền chính xác
- Điều kiện để phiếu khuyến mãi có hiệu lực
- Cho biết tổng số lần một phiếu khuyến mãi có thể được sử dụng
- Phiếu khuyến mãi được áp dụng cho từng sản phẩm, nhà cung cấp hoặc thể loại cụ thể
- Thiết lập ngày bắt đầu cho các phiếu khuyến mãi
- Thiết lập ngày hết hạn cho các phiếu khuyến mãi
- Khách hàng nhập mã phiếu khuyến mãi
2.1.1.6 Giảm giá
- Giới hạn số lần giảm giá trên một sản phẩm
- Giới hạn số lượng sản phẩm được giảm giá
- Tùy chỉnh giá cho từng nhóm khách hàng
- Đánh dấu sản phẩm được giảm giá
- Liệt kê danh sách sản phẩm đang được giảm giá
- Cho phép giảm giá khi khách hàng mua nhiều sản phẩm cùng lúc
2.1.1.7 Giỏ hàng
- Thêm / cập nhật / xóa sản phẩm
- Sửa đổi số lượng
- Tính tổng tiền của giỏ hàng
- Tính tổng trọng lượng
Trang 25- Chọn quốc gia
- Tính chi phí vận chuyển
- Chấp nhận mã khuyến mãi và giảm giá
- Tính thuế bán hàng/VAT(Value Added Tax)
- Yêu cầu số lượng đặt hàng tối thiểu theo từng sản phẩm
- Yêu cầu số lượng đặt hàng tối đa theo từng sản phẩm
2.1.1.8 Quản lý khách hàng
- Xây dựng hệ thống quản lý khách hàng để xem, thêm và ghi chú trên mỗi khách hàng
- Đăng ký tài khoản
- Tạo và lưu không giới hạn số trường như: sinh nhật, tuổi, vv
- Quản lý khách hàng theo nhóm
2.1.1.9 Quá trình đặt hàng
- Nhận tin nhắn thông báo khi có đơn đặt hàng của khách hàng
- Mỗi đơn hàng được sắp xếp dựa vào hình thức thanh toán
- Xem và xử lý đơn đặt hàng trực tuyến
- Hỗ trợ quản lý nhiều loại tiền tệ
- Có thể chỉnh sửa giỏ hàng:
o Đối với khách hàng: yêu cầu điều chỉnh lại đơn hàngđã gửi
o Đối với người quản trị: khi không thể đáp ứng đơn hàng, điều chỉnh và thương lượng lại với khách hàng
- Hỗ trợ chức năng in thông tin chi tiết sản phẩm đẹp và thân thiện (có thể bật hoặc tắt chức năng này)
- Nâng cấp hệ thống
Trang 262.1.1.11 Chức năng hỗ trợ
- Tính năng trợ giúp có thể chuyển trực tiếp đến người quản trị
- Chức năng FAQ (Frequently Asked Questions –Các câu hỏi thường gặp)
- Hỗ trợ tư vấn trực tuyến thông qua Yahoo và Skype
- Hỗ trợ chức năng tìm kiếm thân thiện
2.1.2 Yêu cầu phi chức năng
2.1.2.1 Quản lý hệ thống cơ sở
- Kiểm soát ẩn/hiện nội dung trang web: phải có thông báo cụ thể khi khách hàng truy cập vào các trang đang được hiệu chỉnh hoặc ẩn nội dung
2.1.2.2 Bảo mật
- Chức năng đăng nhập/đăng xuất
- Nhiều mức đăng nhập khác nhau: người quản trị có trang đăng nhập riêng
- Kiểm soát truy xuất các tập tin không mong muốn
- Cung cấp nội dung khác nhau theo quyền của người dùng
- Khả năng phục hồi mật khẩu
- Tất cả các mã của hệ thống nên được thử nghiệm để chống lại SQL pumping
- Mã hóa password
2.1.2.3 Đóng gói
- Dễ dàng cài đặt
Trang 28Đây cũng là trang eshop của nước ngoài cho phép khách hàng có thể lựa chọn mua sản phẩm trên nhiều lĩnh vực khác nhau, tại mỗi lĩnh vực thì nó cũng có các chức năng như các lĩnh vực ở các trang trên Đồng thời, cũng đưa ra các tính năng và các dịch vụ như cho phép khách hàng đưa sản phẩm của mình lên trang này để bán
Ưu điểm:
Giao diện đẹp
Cho phép khách hàng đăng ký, rao vặt sản phẩm của mình
Cung cấp danh sách các sản phẩm bán chạy nhất của các lĩnh vực liên quan đến lĩnh vực mà khách hàng đã chọn
Sản phẩm đa dạng và phong phú
Có hệ thống gian hàng đa quốc gia
Tìm kiếm rõ ràng
Nhược điểm:
Không có phần so sánh các sản phẩm với nhau
Không cho xem nhanh thông tin sản phẩm
Trang 29ng này cun
rõ ràng và đ
kiếm và sắp diện đẹp
ể chọn nhanphép khách hẩm đa dạn
g tin sản ph
ệ thống gian
//www.ebay
Hình nước ngoài, trang này l
g cấp khá đẹp mắt
xếp sản ph
nh theo yêuđăng ký rao
ng, phong phẩm chi tiết,
chủ eBayđăng ký tài giao dịch m
à phong ph
g
xem hay bá
khoản để thmua bán tro
hú, danh mụ
án)
hực hiện giong và ngoà
ục sản phẩm
iao dịch
ài nước
m được
Trang 30Ưu điểm:
Có thanh toán trực tuyến (qua paypal….)
Giao diện đẹp, ưa nhìn
Hiển thị sản phẩm theo thể loại, theo nhà thiết kế
Hiển thị chi tiết thông tin sản phẩm
Tìm kiếm sản phẩm
Trang 31 Xem sản phẩm theo nhiều gốc độ, nhiều màu
Thanh toán trực tuyến (qua paypal….)
Giao diện đẹp, ưa nhìn
Hiển thị sản phẩm theo thể loại
Trang 32 Hiển thị chi tiết thông tin sản phẩm
Đăng kí thành viên
Tìm kiếm sản phẩm
Xem sản phẩm theo nhiều gốc độ, theo màu
Nhược điểm:
Không có phần xem nhanh thông tin sản phẩm
Không có phần so sánh với sản phẩm cùng loại
Không có đánh giá, phản hồi sản phẩm
2.2.1.2 Khảo sát một số website TMĐT ở Việt Nam:
Một số website được đánh giá là sôi động nhất trong thị trường mua bán trực tuyến tại Việt Nam tính đến thời điểm hiện tại.Vinalink là công ty khảo sát trực tuyến số 1 Việt nam đưa ra đánh giá dựa vào các tiêu chí như sau:
+ Doanh số giao dịch thành công
+ Hình thức (B2B/B2C/C2C)
+ Số lượng truy cập
Én bạc: http://www.enbac.com
Trang 33ý các tin tứctrực tuyến
Hình 2
i trang cho
c nhóm sinh
nh nghiệp đtheo thể loông tin sản
n một sản phẩm
m nào đó xem
chủ Én bạc
hụ nữ số 1 doanh chào
Trang 34ản phẩm
uối năm
ực tuyến
Trang 35đúng nghĩa nhất năm 2009.Trang này giới thiệu rất nhiều loại sản phẩm từ hàng công nghệ đến những đồ dùng hàng ngày Danh mục sản phẩm được trình bày rõ ràng, đẹp mắt
Ưu điểm:
Có thanh toán trực tuyến (qua nganluong,paypal….)
Giao diện đẹp, ưa nhìn
Hiển thị sản phẩm theo thể loại
Hiển thị chi tiết thông tin sản phẩm
Đăng kí thành viên
Cho phép các doanh nghiệp đăng ký gian hàng, quảng cáo, rao vặt
Đấu giá trực tuyến cho một sản phẩm
Lưu lại những sản phẩm đã xem
Không có phần xem nhanh thông tin sản phẩm
Không có phần so sánh với sản phẩm cùng loại
123mua : http://www.123mua.vn
Trang 36kí thành vihản hồi về
ên một sản ph
Trang 37:
g có phần x
g có phần skiếm còn hạ
Vật giá : htt
n
ở nhiều góc hat, video, mhẩm
thông tin sảphẩm với s
ng chung
atgia.com
8 Trang c
ản phẩm sản phẩm cù
chủ Vật giá
ùng loại
Trang 38
Trang web này giới thiệu nhiều sản phẩm trên nhiều lĩnh vực khác nhau để khách hàng
có thể lựa chọn sản phẩm cần mua Đồng thời trang web này cũng giới thiệu rất chi tiết
về sản phẩm và tư vấn các nhà sản xuất, cửa hàng bán sản phẩm này Theo dõi ý kiến
và đánh giá của khách hàng để đưa sản phẩm phù hợp với người tiêu dùng
Ưu điểm:
Sản phẩm đa dạng, phong phú
Có đánh giá sản phẩm công nghệ mới
Cung cấp thông tin thị trường (sản phẩm mới cập nhật, sản phẩm ưa chuộng nhất, sản phẩm công nghệ mới)
Sản phẩm được trình bày theo danh mục rất chi tiết, rõ ràng và đẹp mắt
Thông tin chi tiết sản phẩm rất chi tiết và đầy đủ
Cho phép khách hàng so sánh các sản phẩm với nhau
Có hỗ trợ online, hỏi đáp và phản hồi
Hỗ trợ mua bán trực tuyến và thanh toán qua tài khoản ngân hàng
Có hỗ trợ danh mục cửa hàng cho khách lựa chọn
Cho phép đăng ký gian hàng đảm bảo và quản lý gian hàng của mình (có phí)
Cho phép tìm kiếm và đăng tin rao vặt
Khi đăng ký tài khoản trên vật giá là có thể đăng sản phẩm của mình
Đăng ký tài khoản có feedback (vừa có ưu điểm là tránh thông tin giả, quản lý được khách hàng nhưng cũng có nhược điểm là chậm quá trình mua và bán)
Nhược điểm:
Trang chủ quá nhiều chi tiết nên khó nhìn
Phần xem nhanh thông tin sản phẩm quá nhiều chi tiết nên chữ quá nhỏ và khó đọc
Mục so sánh sản phẩm không rõ ràng
Theo các chuẩn về TMĐT do itida – Developing IT in Egypt nghiên cứu thì đa số các trang web trên đã hiện thực hầu như đầy đủ các chức năng theo chuẩn đó, tuy nhiên vẫn còn một số chức năng chưa hiện thực
Trang 39ếm
ại sản phẩmoại sản phẩm
a nhiều….)
nh ảnh của
n mãi, giảm
ức năng quảàng trực tuymail thông bá
iá sản phẩm
Hình 2 9 T
g shopping hức năng qu
oại chí nhất đị
theo nhiều g
n phẩm dựagười quản tr
g ký, khi m
Online Shop
em cũng đau:
Trang 402.2.2 Đánh giá chức năng các trang web đã khảo sát