TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN HỆ THỐNG THÔNG TIN

(cid:94)

(cid:93)

NGUYỄN THỊ KIM PHƯỢNG – TRƯƠNG KIỀU GIANG

KHÓA LUẬN CỬ NHÂN TIN HỌC

TP.HCM, 2005

(cid:94)

(cid:93)

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN HỆ THỐNG THÔNG TIN

NGUYỄN THỊ KIM PHƯỢNG 0112237 0112344 TRƯƠNG KIỀU GIANG

GIÁO VIÊN HƯỚNG DẪN THẠC SĨ: NGUYỄN TRẦN MINH THƯ

NIÊN KHÓA 2001-2005

Lôøi caûm ôn

Chuùng em xin chaân thaønh caûm ôn Ban giaùm hieäu, quyù Thaày Coâ cuûa

tröôøng Ñaïi hoïc Khoa Hoïc Töï Nhieân Tp.Hoà Chí Minh, ñaëc bieät laø

caùc Thaày Coâ trong khoa Coâng Ngheä Thoâng Tin ñaõ taän tình giaûng

daïy, trang bò cho chuùng em nhöõng kieán thöùc caàn thieát trong suoát nhöõng

naêm hoïc taäp taïi tröôøng.

Chuùng em xin chaân thaønh caûm ôn Thaïc só Nguyeãn Traàn Minh Thö

ñaõ taän tình quan taâm, höôùng daãn vaø giuùp ñôõ chuùng em trong quaù trình

thöïc hieän luaän vaên ñeå chuùng em coù theå hoaøn thaønh toát luaän vaên naøy.

Chuùng toâi xin chaân thaønh caûm ôn caùc anh chò cuøng caùc baïn ñaõ coù

nhöõng nhaän xeùt, ñoùng goùp yù kieán, ñoäng vieân, quan taâm vaø giuùp ñôõ

chuùng toâi vöôït qua khoù khaên trong suoát quaù trình thöïc hieän ñeà taøi.

Cuoái cuøng, chuùng con xin göûi loøng bieát ôn saâu saéc ñeán cha meï, gia

ñình ñaõ taïo moïi ñieàu kieän veà vaät chaát, tinh thaàn, ñoäng vieân, khích leä

vaø hoã trôï chuùng con trong suoát thôøi gian qua.

Tp.Hoà Chí Minh, ngaøy 12 thaùng 7 naêm 2005

Nhoùm sinh vieân thöïc hieän

Nguyeãn Thò Kim Phöôïng – Tröông Kieàu Giang

LỜI NÓI ĐẦU

Thế kỷ 21 - thế kỷ của sự bùng nổ công nghệ thông tin, các công nghệ

tiên tiến phát triển như vũ bão, mang một luồng gió mới thổi vào nhận thức

của mỗi người. Song song đó, thế giới đang trong xu thế toàn cầu hóa, tất

cả đều mang ý nghĩa hội nhập. Lúc này, các doanh nghiệp và chính phủ

không chỉ cạnh tranh với các doanh nghiệp trong một quốc gia mà còn cạnh

tranh với các doanh nghiệp, chính phủ ở khắp thế giới. Vì thế, để tồn tại và

phát triển, mục tiêu mà các doanh nghiệp hướng đến đầu tiên là nâng cao

chất lượng phục vụ khách hàng. Khách hàng là yếu tố sống còn của bất kỳ

doanh nghiệp nào trong thế kỷ 21. Một chính phủ muốn quốc gia mình phát

triển phải xem nhân dân và doanh nghiệp là khách hàng. Để có khách hàng

đã khó, để giữ khách hàng càng khó hơn nhiều. Doanh nghiệp nào làm cho

khách hàng thỏa mãn, doanh nghiệp đó sẽ phát triển tốt, chính phủ nào làm

nhân dân hài lòng chính phủ đó sẽ vững mạnh.

Trong bối cảnh phát triển mạnh mẽ của Internet nói chung, thương mại

điện tử và chính phủ điện tử nói riêng, việc ứng dụng công nghệ thông tin

vào lĩnh vực dịch vụ khách hàng không là mới trên thế giới nhưng là mới ở

Việt Nam. Nhiều vấn đề đặt ra là làm thế nào đem đến cho khách hàng sự

phục vụ tốt nhất, tiện lợi và hiệu quả nhất. Chính vì vậy đề tài “Tìm hiểu

công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng”

được đưa ra nhằm giúp cho các doanh nghiệp hay các tổ chức nhà nước

hỗ trợ khách hàng hiệu quả hơn. Với luận văn này, nhóm chúng em mong

muốn sẽ xây dựng được một hệ thống hỗ trợ khách hàng giảm chi phí về

nhân sự và viễn thông, thời gian hỗ trợ ngắn hơn, thông tin hỗ trợ chính xác

theo yêu cầu và không bỏ sót yêu cầu của khách hàng.

Nội dung của đề tài gồm các phần chính sau:

Chương 1: Tổng quan - Giới thiệu đôi nét về hệ thống hỗ trợ dịch vụ khách

hàng như mục tiêu, phạm vi, đối tượng mà hệ thống hướng tới. Song song

đó là các cách tiếp cận bài toán và đưa ra hướng giải quyết bài toán.

Chương 2: Giới thiệu công nghệ XML – Đề tài sử dụng một công nghệ mới

để hỗ trợ trong vấn đề lưu trữ và trao đổi thông tin trong môi trường Internet

đó là XML. Chương này sẽ giới thiệu được cho mọi người biết XML là gì và

các công nghệ đang được hỗ trợ trên XML.

Chương 3: Mô tả hệ thống quản lý dịch vụ khách hàng - Mô tả chi tiết hệ

thống hỗ trợ dịch vụ khách hàng và đưa ra các yêu cầu mà hệ thống sẽ

được xây dựng.

Chương 4: Phân tích ứng dụng - Phân tích chi tiết các yêu cầu theo mô

hình UML (Unified Model Language).

Chương 5: Thiết kế và cài đặt ứng dụng.

Chương 6: Kết luận và hướng phát triển – Tổng kết những kết quả đạt được

và mặt hạn chế của đề tài, đồng thời cũng đưa ra hướng phát triển cho hệ

thống sau này.

Phần cuối cùng là Tài liệu tham khảo và phụ lục.

Do thời gian có hạn, kinh nghiệm phân tích, thiết kế, cài đặt còn hạn chế

nên chắc chắn không tránh khỏi một số sai sót nhất định. Rất mong nhận

được sự đóng góp ý kiến của quý Thầy Cô và bạn bè để chúng em hoàn

thiện đề tài này.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

MỤC LỤC

Chương 1: MỞ ĐẦU ....................................................................................... 9

1.1. Giới thiệu ứng dụng ............................................................................ 9

1.2. Đối tượng và phạm vi của ứng dụng................................................. 10

1.2.1. Đối tượng .................................................................................... 10

1.2.2. Phạm vi ....................................................................................... 10

1.3. Mục tiêu cần đạt được và các cách tiếp cận bài toán ........................ 11

1.3.1. Mục tiêu cần đạt được................................................................. 11

1.3.2. Các cách tiếp cận bài toán .......................................................... 11

1.3.3. Vấn đề đặt ra cho hệ thống hỗ trợ dịch vụ khách hàng .............. 16

1.4. Hướng giải quyết bài toán ................................................................. 18

1.4.1. Về tốc độ thực hiện câu truy vấn ................................................ 18

1.4.2. Vấn đề tìm kiếm thông tin .......................................................... 21

Chương 2: NGHIÊN CỨU CÔNG NGHỆ XML ....................................... 25

2.1. Tổng quan về XML ........................................................................... 25

2.1.1. Giới thiệu .................................................................................... 25

2.1.2. Mục tiêu ra đời và lợi ích khi sử dụng XML.............................. 25

2.1.3. Một tài liệu XML trông như thế nào?......................................... 27

2.1.4. Tạo lập một tài liệu XML ........................................................... 27

2.1.5. Những thành phần của một tài liệu XML................................... 28

2.1.6. Một tài liệu XML hợp lệ............................................................. 29

2.1.7. XPath........................................................................................... 33

2.1.8. Nhận xét về XML ....................................................................... 34

2.2. Cách sử dụng một tài liệu XML....................................................... 34

2.2.1. Đọc và phân tích tài liệu XML ................................................... 35

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

9

2.2.2. Định hướng qua tài liệu XML để rút trích dữ liệu: .................... 37

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

2.2.3. Truy vấn dữ liệu XML sử dụng XPathDocument và XPathNavigator..................................................................................... 39

2.2.4. Nhận xét ...................................................................................... 45

2.3. XML và Cơ sở dữ liệu....................................................................... 45

2.3.1. XML có phải là Cơ sở dữ liệu? .................................................. 45

2.3.2. Vai trò XML trong hệ thống hỗ trợ dịch vụ khách hàng............ 46

2.3.3. Mô hình lưu trữ trong hệ thống quản lý dịch vụ khách hàng (eSupport) ............................................................................................. 47

Chương 3: MÔ TẢ HỆ THỐNG QUẢN LÝ DỊCH VỤ KHÁCH HÀNG

......................................................................................................................... 48

3.1. Đối tượng sử dụng............................................................................. 48

3.2. Mô tả hệ thống quản lý dịch vụ khách hàng ..................................... 48

3.2.1. Phân hệ hỗ trợ khách hàng.......................................................... 48

3.2.2. Phân hệ hỗ trợ hệ thống .............................................................. 49

3.3. Xác định yêu cầu chức năng hệ thống .............................................. 51

3.3.1. Yêu cầu chức năng nghiệp vụ..................................................... 51

3.3.2. Yêu cầu chức năng hệ thống....................................................... 61

3.3.3. Yêu cầu phi chức năng................................................................ 63

Chương 4: PHÂN TÍCH ............................................................................... 64

4.1. Lược đồ USE-CASE ......................................................................... 64

4.2. Đặc tả Use-Case ................................................................................ 66

4.2.1. Đặc tả Use-Case Tìm kiếm FAQ ................................................ 66

4.2.2. Đặc tả Use-Case Đăng ký tài khoản ........................................... 67

4.2.3. Đặc tả Use-Case Tạo yêu cầu ..................................................... 69

4.2.4. Đặc tả Use-Case Xem và hiệu chỉnh yêu cầu ............................. 70

4.2.5. Đặc tả Use-Case Giải đáp yêu cầu.............................................. 72

4.2.6. Đặc tả Use-Case Tìm kiếm yêu cầu............................................ 73

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

10

4.2.7. Đặc tả Use-Case Quản lý yêu cầu............................................... 74

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

4.2.8. Đặc tả Use-Case Quản lý FAQ................................................... 76

Chương 5: THIẾT KẾ .................................................................................. 79

5.1. Hiện thực hóa Use-Case.................................................................... 79

5.1.1. Use-Case Tìm kiếm FAQ ........................................................... 79

5.1.2. Use-Case Đăng ký tài khoản....................................................... 81

5.1.3. Use-Case Tạo yêu cầu mới ......................................................... 83

5.1.4. Use-Case Giải quyết yêu cầu ...................................................... 85

5.1.5. Use-Case Xem và hiệu chỉnh yêu cầu ........................................ 87

5.1.6. Use-Case Tìm kiếm yêu cầu ....................................................... 89

5.1.7. Use-Case Quản lý yêu cầu .......................................................... 91

5.1.8. Use-Case Quản lý FAQ .............................................................. 93

5.2. Thiết kế cơ sở dữ liệu........................................................................ 96

5.2.1. Sơ đồ lớp ..................................................................................... 96

5.2.2. Mô hình quan hệ ......................................................................... 97

5.2.3. Mô tả chi tiết các lớp đối tượng.................................................. 98

5.2.4. Mô tả các ràng buộc toàn vẹn ................................................... 102

5.3. Thiết kế cài đặt và triển khai ........................................................... 105

5.3.1. Mô hình cài đặt ......................................................................... 105

5.3.2. Mô hình triển khai hệ thống...................................................... 106

5.4. Thiết kế giao diện............................................................................ 107

5.4.1. Sơ đồ liên kết các màn hình...................................................... 108

5.4.2. Thiết kế chi tiết một số màn hình ............................................. 109

Chương 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................. 121

6.1. Kết luận ........................................................................................... 121

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

TÀI LIỆU THAM KHẢO ..........................................................................124

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

11

PHỤ LỤC .....................................................................................................125

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Danh mục hình vẽ:

Hình 1-1: Phạm vi hệ thống ........................................................................... 10

Hình 1-2: Giải pháp 1..................................................................................... 12

Hình 1-3: Giải pháp 2..................................................................................... 13

Hình 1-4: Giải pháp 3..................................................................................... 14

Hình 1-5: Giải pháp 4..................................................................................... 14

Hình 1-6: Giải pháp 5..................................................................................... 15

Hình 1-7: Giải pháp 6..................................................................................... 16

Hình 1-8: Mô hình truy vấn dữ liệu ............................................................... 17

Hình 1-9: Mô hình truy vấn dữ liệu có hỗ trợ XML...................................... 20

Hình 1-10: Mô hình xử lý tìm kiếm ............................................................... 21

Hình 1-11: Mô hình mô tả vai trò của XML.................................................. 24

Hình 2-1: Mô hình DOM ............................................................................... 38

Hình 5-1: Sơ đồ lớp........................................................................................ 96

Hình 5-2: Mô hình quan hệ cơ sở dữ liệu ...................................................... 97

Hình 5-3: Mô hình cài đặt ............................................................................ 105

Hình 5-4: Mô hình triển khai hệ thống ........................................................ 107

Hình 5-5: Sơ đồ liên kết các màn hình......................................................... 108

Danh mục các bảng:

Bảng 2-1: Danh sách các kiểu dữ liệu của lược đồ XML.............................. 33

Bảng 4-1: Danh sách các Actor...................................................................... 65

Bảng 4-2: Danh sách các Use-Case ............................................................... 66

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

12

Bảng 5-1: Danh sách các đối tượng lưu trữ dữ liệu ....................................... 98

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Chương 1: MỞ ĐẦU

1.1. Giới thiệu ứng dụng

Hệ thống quản lý dịch vụ khách hàng được xây dựng với mục tiêu chủ yếu

là hỗ trợ cho khách hàng khi có nhu cầu tìm hiểu thông tin về sản phẩm và

dịch vụ của doanh nghiệp. Hệ thống hoạt động như sau:

Khi khách hàng có nhu cầu tìm kiếm các thông tin liên quan đến sản phẩm

và dịch vụ của công ty hay doanh nghiệp, khách hàng vào khu vực dịch vụ

khách hàng (gọi là helpdesk) để tìm kiếm thông tin trong các câu hỏi và câu

trả lời có sẵn (còn gọi là hệ thống FAQ).

Trường hợp không tìm thấy thông tin cần thiết trong FAQ, khách hàng có

thể gửi yêu cầu và yêu cầu được giải đáp từ phía doanh nghiệp, công ty.

Khách hàng có thể gửi trực tiếp qua hệ thống website hỗ trợ khách hàng hoặc

gửi email trực tiếp về địa chỉ email hỗ trợ của doanh nghiệp, khách hàng sẽ

được giải đáp trong thời gian nhanh nhất có thể.

Nhân viên phụ trách giải đáp yêu cầu của khách hàng sẽ xem xét yêu cầu

và giải đáp cho khách hàng, nếu yêu cầu gửi không đúng phòng ban sẽ được

nhân viên chuyển qua phòng ban phù hợp.

Nội dung câu hỏi và trả lời của mỗi yêu cầu được nhân viên tuyển chọn,

sàng lọc để cập nhật vào FAQ. Như thế khi khách hàng cần thông tin tương tự

thì có thể tìm kiếm ngay trong hệ thống FAQ một cách nhanh chóng và tiện

lợi.

Quản trị hệ thống theo dõi quá trình giải quyết yêu cầu của các nhân viên,

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

9

đảm bảo cho các yêu cầu của khách hàng được hỗ trợ kịp thời.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

1.2. Đối tượng và phạm vi của ứng dụng

1.2.1. Đối tượng

Hệ thống quản lý dịch vụ khách hàng (eSupport) được xây dựng hướng

đến các đối tượng là các doanh nghiệp, công ty vừa và lớn trong cả nước song

song đó là các khách hàng giao dịch với doanh nghiệp. Do nhu cầu cạnh tranh

các doanh nghiệp cần phải phục vụ tốt khách hàng về các mặt hỗ trợ thông

tin, giải đáp, vì thế các doanh nghiệp này cần có hệ thống hỗ trợ dịch vụ

khách hàng để kịp thời đáp ứng yêu cầu của khách hàng trong quá trình giao

dịch với doanh nghiệp.

1.2.2. Phạm vi

Môi trường: khách hàng, doanh nghiệp, …

Phân hệ hỗ trợ khách hàng

Phân hệ hỗ trợ hệ thống

Đầu vào: yêu cầu, tìm kiếm, download, …

Đầu ra: yêu cầu được giải quyết, vấn đề tìm kiếm được, …

Hình 1-1: Phạm vi hệ thống

Hệ thống được xây dựng để hỗ trợ, phục vụ khách hàng trong phạm vi

giữa doanh nghiệp và khách hàng xoay quanh các vấn đề về thông tin các sản

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

10

phẩm và dịch vụ của doanh nghiệp.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

1.3. Mục tiêu cần đạt được và các cách tiếp cận bài

toán

1.3.1. Mục tiêu cần đạt được

1.3.1.1. Yêu cầu chức năng

(cid:131) Yêu cầu chức năng nghiệp vụ

Thực hiện đầy đủ các chức năng nghiệp vụ như tìm kiếm yêu cầu, tạo yêu

cầu, giải quyết yêu cầu, tải tài liệu, tìm kiếm thông tin, v.v.…

(cid:131) Yêu cầu chức năng hệ thống:

Thực hiện các chức năng tự động như: gởi câu trả lời cho khách hàng qua

email, gởi thông báo qua email, thống kê, nhận yêu cầu của khách hàng qua

email, v.v…Việc lưu trữ dữ liệu phải đạt chi phí tối thiểu và có sự ổn định

cao.

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

Hệ thống hỗ trợ dịch vụ khách hàng làm việc hiệu quả, có thể giúp doanh

nghiệp giảm chi phí về thời gian và nhân lực, giúp doanh nghiệp giải đáp

nhanh và chính xác khi khách hàng có yêu cầu, có thể hỗ trợ trực tuyến

(online), v.v…

1.3.2. Các cách tiếp cận bài toán

Hệ thống hỗ trợ dịch vụ khách hàng không còn xa lạ với các doanh nghiệp

trong cả nước vì tầm quan trọng và ích lợi của nó trong vấn đề giao dịch với

khách hàng. Vì thế nhu cầu xây dựng một hệ thống phục vụ khách hàng cho

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

11

doanh nghiệp là cần thiết và tất yếu. Nhưng khi bắt đầu xây dựng hệ thống,

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

điều quan tâm đầu tiên của chúng ta là gì? Bất cứ hệ thống nào vấn đề quan

trọng đầu tiên cần được quan tâm là tổ chức tốt việc lưu trữ dữ liệu. Nếu dữ

liệu được tổ chức tốt thì hệ thống của chúng ta sẽ cải thiện về mọi mặt như tốc

độ truy xuất, chi phí lưu trữ, thời gian cập nhật, v.v…Như vậy, làm cách nào

tổ chức tốt việc lưu trữ dữ liệu, nhất là ứng dụng của hệ thống dịch vụ khách

hàng chạy trong môi trường Internet, môi trường đa người dùng. Ví dụ như

khách hàng cần tìm kiếm những vấn đề về sản phẩm mà doanh nghiệp nào đó

cung cấp, chúng ta lưu trữ dữ liệu như thế nào để cho việc tìm kiếm của khách

hàng đạt hiệu quả là nhanh nhất. Để giải quyết vấn đề này, một số giải pháp

cho vấn đề lưu trữ dữ liệu của hệ thống được đề nghị như sau:

1.3.2.1. Giải pháp 1

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

Hình 1-2: Giải pháp 1

Ký hiệu: A_Table hay A_Database chỉ một đối tượng trong ngôn ngữ lập

1 Cơ sở dữ liệu

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

12

trình có thể giao tiếp với CSDL1 quan hệ.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Ưu điểm: Đây là mô hình đang được sử dụng rất phổ biến vì tận dụng được

những ưu điểm của hệ quản trị cơ sở dữ liệu.

Khuyết điểm: Không linh động trong vấn đề trao đổi dữ liệu giữa các hệ

thống khác nhau đặc biệt là khi ứng dụng chạy trên web.

1.3.2.2. Giải pháp 2

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

Hình 1-3: Giải pháp 2

Ký hiệu: A_XMLDom chỉ đến một đối tượng XML có thể đọc và ghi trên

tập tin XML.

Ưu điểm: Không phụ thuộc vào bất cứ hệ quản trị nào, dễ thực hiện.

Khuyết điểm: Việc thao tác truy vấn trên tập tin XML2 còn nhiều hạn chế

và vấn đề bảo mật không bằng hệ quản trị.

1.3.2.3. Giải pháp 3

2 Extensible Markup Language

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

13

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Hình 1-4: Giải pháp 3

Ưu điểm: Tận dụng được cả hai cách lưu trữ đó là trên tập tin và trên hệ

quản trị.

Khuyết điểm: Không phải tập tin XML nào cũng có thể đọc/ghi bằng đối

tượng Datatable vì có nhiều tập tin XML lưu trữ phức tạp.

1.3.2.4. Giải pháp 4

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

14

Hình 1-5: Giải pháp 4

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Ưu điểm: Mô hình này nghiên về việc lưu trữ trên tập tin XML. Và việc

trao đổi giữa một đối tượng XMLDom và cơ sở dữ liệu quan hệ cũng dễ dàng

vì từ SQL Server 2000 trở lên đã hỗ trợ truy xuất trên tập tin XML.

Khuyết điểm: Mặc dù từ SQL 2000 trở lên có hỗ trợ XML nhưng việc tạo

ra tập tin XML vẫn còn bị lỗi do không thể tạo ra đúng cấu trúc mà người

dùng mong đợi nếu như cấu trúc XML đó phức tạp.

1.3.2.5. Giải pháp 5

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

Hình 1-6: Giải pháp 5

Ưu điểm: Việc đọc/ghi trên từng đối tượng đã được tách riêng biệt ra để

mỗi đối tượng chỉ làm đúng nhiệm vụ của đối tượng đó nên thuận tiện trong

vấn đề xử lý.

Khuyết điểm: Vấn đề là làm cách nào để thực hiện việc chuyển đổi từ đối

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

15

tượng XMLDom thành đối tượng Datatable và ngược lại.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

1.3.2.6. Giải pháp 6

Theo giải pháp này, việc lưu trữ dữ liệu được tổ chức theo mô hình sau:

Hình 1-7: Giải pháp 6

Ưu điểm: Việc trao đổi thông tin giữa các đối tượng rất linh động, vì một

đối tượng XMLDom có thể đọc/ghi trực tiếp đến CSDL quan hệ hoặc có thể

thông qua một Datatable.

(cid:35) Kết luận: Mỗi giải pháp có ưu điểm và khuyết điểm khác nhau. Việc

Khuyết điểm: Do có nhiều cách đọc/ghi nên phức tạp, khó quản lý.

chọn lựa mô hình nào sẽ tùy thuộc vào nhu cầu của ứng dụng của chúng ta.

Nghĩa là ứng dụng của chúng ta sẽ quan tâm vấn đề nào? Vấn đề nào là vấn

đề được quan tâm hàng đầu thì lúc đó chúng ta sẽ lựa chọn giải pháp lưu trữ

dữ liệu cho phù hợp.

1.3.3. Vấn đề đặt ra cho hệ thống hỗ trợ dịch vụ khách

hàng

Vấn đề quan tâm hàng đầu của hệ thống là làm sao tăng tốc độ thực hiện

các thao tác truy vấn trên cơ sở dữ liệu quan hệ. Ví dụ như khách hàng cần

tìm kiếm thông tin trong hệ thống FAQ, khách hàng sẽ nhập vào câu hỏi cần

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

16

tìm kiếm, sau đó chương trình sẽ thực hiện kết nối với SQL để thực hiện câu

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

truy vấn trả về thông tin tìm kiếm được cho khách hàng. Mô hình thực hiện

được mô tả như sau:

Hình 1-8: Mô hình truy vấn dữ liệu

Như vậy, nếu có nhiều khách hàng có nhu cầu tìm kiếm thì mỗi khách

hàng đều phải kết nối đến SQL Server để lấy dữ liệu. Và sẽ có trường hợp

nhiều khách hàng đều cùng truy vấn đến cùng một dữ liệu, khi đó thời gian

thực hiện câu truy vấn để trả về kết quả sẽ rất chậm do phải thực hiện việc

điều khiển đồng thời, phân bổ tài nguyên để thực hiện câu truy vấn tại CSDL.

Một vấn đề khác đặt ra cho hệ thống là không chỉ tìm kiếm được vấn đề

dựa trên câu hỏi mà phải tìm kiếm được tất cả những vấn đề có liên quan đến

nội dung câu hỏi. Nghĩa là nếu khách hàng nhập vào câu hỏi: “các vấn đề liên

quan đến mạng và email” thì hệ thống sẽ phải trả về tất cả những vấn đề có

liên quan đến từ khóa “mạng” và “email”. Như vậy nếu chỉ đơn thuần tổ chức

trên CSDL quan hệ thì không thể giải quyết được vấn đề này vì với cách thực

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

17

hiện trên CSDL quan hệ, mà cụ thể là SQL Server 2000, nó sẽ tìm đúng cụm

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

từ “các vấn đề liên quan đến mạng và email” và nếu trong CSDL không có

đúng cụm từ này thì kết quả trả về là không có, trong khi mong đợi của người

dùng là trả ra những vấn đề có liên quan đến “mạng” và “email”.

Tóm lại: Chúng ta có hai vấn đề cần giải quyết khi lưu trữ dữ liệu trên

SQL Server

− Tốc độ thực hiện câu truy vấn.

− Việc tìm kiếm thông tin hiệu quả

Làm sao giải quyết được bài toán đặt ra cho hệ thống khi chỉ lưu trữ trên

CSDL quan hệ.

1.4. Hướng giải quyết bài toán

Chúng ta thấy được việc sử dụng giải pháp 1 để lưu trữ dữ liệu sẽ không

giải quyết được những vấn đề đặt ra cho bài toán. Và như vậy cần thiết phải

sử dụng mô hình khác để hệ thống thực hiện khả thi hơn.

Sau đây, chúng ta sẽ xem qua cách hệ thống thực hiện để giải quyết lần

lượt các vấn đề trên, và từ đó chọn ra giải pháp lưu trữ thích hợp nhất.

1.4.1. Về tốc độ thực hiện câu truy vấn

Nhu cầu khách hàng tìm kiếm các vấn đề cần giải đáp là thường xuyên xảy

ra và với tần suất rất cao nên việc lưu trữ trong SQL Server sẽ không khả thi.

Nên chúng ta sẽ sử dụng thêm một cách lưu trữ nữa đó là trên tập tin mà cụ

thể là trên tập tin XML. Giải pháp thực hiện cụ thể như sau:

Giả sử trong SQL Server ta lưu trữ dữ liệu của bảng Câu hỏi-Trả Lời

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

18

(FAQ) như sau:

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

FAQ_ID

FAQ_QUESTION

FAQ_ANSWER … FAQ_TOP_ID

TOP001

FAQ00001

Bạn làm theo các bước sau….

Cách nhận biết người nhận thư đã đọc thư của mình hay chưa?

FAQ00002

TOP002

Hỏi về phần mềm gõ tiếng Việt?

Unikey là một phần mềm…..

FAQ00003 …

FAQ00004 …

FAQ000020 …

Bằng việc sử dụng các công cụ hỗ trợ trong môi trường lập trình Visual

Studio.NET, ta sẽ tạo được tập tin FAQ.xml từ dữ liệu được lưu trữ trong

Cách nhận biết người nhận thư đã đọc thư của mình hay chưa?

Bạn làm theo các bước sau, để khi gửi thư cho mọi người trên giao diện Outlook Express sẽ có phản hồi lại là họ đã đọc thư…..

10-7-2005

TOP001

10

DOC001

…….

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

19

bảng FAQ có nội dung và cấu trúc như sau:

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

…..

…..

….

…………….

…………….

Như vậy, mỗi khi khách hàng có nhu cầu tìm kiếm trong hệ thống FAQ,

thì không cần phải thực hiện kết nối đến SQL Server, mà chỉ cần mở tập tin

FAQ.xml và thực hiện việc truy vấn trên tập tin XML, cuối cùng trả về kết

quả cho khách hàng. Như vậy, việc thực hiện trên tập tin sẽ nhanh hơn rất

nhiều so với cơ sở dữ liệu (mở kết nối, tìm kiếm dữ liệu và thực hiện truy vấn

trên dữ liệu tìm được để cuối cùng cho ra kết quả như mong muốn =>truy vấn

chậm).

Mô hình minh họa như sau:

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

20

Hình 1-9: Mô hình truy vấn dữ liệu có hỗ trợ XML

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

1.4.2. Vấn đề tìm kiếm thông tin

Muốn kết quả tìm kiếm đúng như mong muốn người dùng thì phải dựa vào

ngữ nghĩa của nội dung câu hỏi mà người dùng nhập vào. Để làm được điều

này thì phải dựa vào từ điển mới biết được chính xác ngữ nghĩa của câu.

Theo đó, dựa trên tập tin FAQ.xml ở trên, chương trình sẽ trích từ dựa trên

từ điển bằng phương pháp LRMM (Left Right Maximum Matching)[4].

Yêu cầu tìm kiếm

XML

Danh sách các từ khóa

Trích từ và loại bỏ từ thừa

Sau đây là mô hình minh họa cho quá trình xử lý

Kết quả hiển thị

Bảng dữ liệu

Tạo chỉ mục

XML

XML

Danh sách các từ khóa

Trích từ và loại bỏ từ thừa

Hình 1-10: Mô hình xử lý tìm kiếm

Theo phương pháp LRMM, để phân đoạn từ tiếng Việt trong một ngữ/câu,

ta đi từ trái sang phải và chọn từ có nhiều âm tiết nhất mà có mặt trong từ

điển, rồi cứ tiếp tục cho từ kế tiếp cho đến hết câu. Với cách này, ta dễ dàng

tách được chính xác các ngữ câu như: “hợp tác xã | mua bán”; “thành lập |

nước | Việt Nam | dân chủ | cộng hòa”…Tuy nhiên, phương pháp này sẽ tách

từ sai trong các trường hợp như: “học sinh | học sinh | học”; “một | ông | quan

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

21

tài | giỏi”. Mặc dù vậy, phương pháp này cũng tách từ chính xác đến 95%

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

(theo giáo trình Xử lý ngôn ngữ tự nhiên). Vì vậy nhóm chúng em quyết định

chọn phương pháp này để sử dụng trong việc trích từ này mặc dù nó chưa

phải là phương pháp tối ưu nhất.

Trở lại vấn đề trích từ cho tập tin FAQ.xml, bằng phương pháp LRMM,

chúng ta sẽ trích được các từ trong tập tin FAQ.xml và lưu thành một tập tin

…………….

…………….

FAQ_Word.xml với cấu trúc như sau:

Chú thích: Danh sách các thẻ trong mỗi thẻ

… cho biết ứng với từ này thì có những tài liệu nào

liên quan đến nó.

Tập tin FAQ_Word.xml này sau đó sẽ qua một khâu nữa đó là loại bỏ

những từ thừa gọi là kỹ thuật “stoplist”. Chúng ta sẽ duyệt qua các từ trong

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

22

tập tin FAQ_Word.xml và so sánh với tập tin Stoplist.xml (đây là tập tin lưu

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

những từ thừa), sau đó tiến hành loại bỏ những từ không có nghĩa để cuối

cùng được một tập tin FaqDaLoaiStopList.xml với kích thước tập tin giảm

đáng kể so với tập tin FAQ_Word.xml do đã bỏ đi những từ không có nghĩa.

Đây sẽ là tập tin chúng ta mong muốn để thực hiện việc so khớp khi khách

hàng nhập vào một câu truy vấn.

Như vậy, mỗi khi khách hàng nhập vào nội dung câu hỏi cần tìm kiếm, nội

dung câu hỏi này sẽ được phân đoạn thành những cụm từ và sẽ loại bỏ những

từ thừa, chỉ giữ lại những từ có nghĩa. Và những cụm từ này sẽ được so khớp

với tập tin FaqDaLoaiStopList.xml để trả về kết quả truy vấn cho người dùng

(xem hình 1.10). Với cách thực hiện này, tất cả những vấn đề có liên quan đến

nội dung câu hỏi sẽ được trả về cho người dùng và tất cả những điều này đều

thực hiện trên tập tin XML nên sẽ truy vấn rất nhanh. Như vậy vấn đề đặt ra

đã được giải quyết.

Và bây giờ thì chúng ta đã biết được hệ thống quản lý dịch vụ khách hàng

sẽ chọn giải pháp nào để lưu trữ dữ liệu. Đó là giải pháp 5 vì theo như giải

pháp này, việc lưu trữ dữ liệu sẽ sử dụng cả trên tập tin XML và trên cơ sở dữ

liệu quan hệ.

Mặt khác, việc chọn giải pháp 5 này là do nhu cầu cần thiết phải sử dụng

thêm XML để hỗ trợ trong vấn đề lưu trữ và truy xuất trên hệ thống. Đó là khi

dữ liệu được lưu thông trên môi trường web thì vấn đề trao đổi thông tin giữa

các hệ thống khác nhau là yếu tố cần được xem xét. Do XML giải quyết rất

tốt trong vấn đề này nên cần thiết sử dụng thêm XML. Sau đây là mô hình để

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

23

thấy được vai trò của XML:

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

(cid:35) Kết luận: Trên đây là một cách nhìn tổng quan về cách thực hiện cũng

Hình 1-11: Mô hình mô tả vai trò của XML

như là vấn đề lưu trữ của hệ thống hỗ trợ dịch vụ khách hàng. Như vậy, chúng

ta muốn tạo lập được những tài liệu XML như mong muốn và thực hiện truy

vấn trên tập tin này thì điều tối thiểu là phải biết được XML là gì cũng như

các thao tác thực hiện truy vấn trên tập tin XML như thế nào? Vấn đề như thế

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

24

nào, chúng ta sẽ xem tiếp qua chương sau.

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

Chương 2: NGHIÊN CỨU CÔNG NGHỆ XML

2.1. Tổng quan về XML

2.1.1. Giới thiệu

XML (Extensible Markup Language) ra đời vào tháng 2/1998, là ngôn ngữ

có kiến trúc gần giống với HTML nhưng XML nhanh chóng trở thành một

chuẩn phổ biến trong việc chuyển đổi thông tin qua các trang web sử dụng

giao thức HTTP. Trong khi HTML là ngôn ngữ chủ yếu về hiển thị dữ liệu thì

XML lại đang phát triển mạnh về việc chuyển tải, trao đổi và thao tác dữ liệu

bằng XML. XML đưa ra một định dạng chuẩn cho cấu trúc của dữ liệu hoặc

thông tin bằng việc tự định nghĩa định dạng của tài liệu. Bằng cách này, dữ

liệu được lưu trữ bằng XML sẽ độc lập với việc xử lý. Vì vậy XML ra đời sẽ

đáp ứng được yêu cầu ngày càng cao của các nhà lập trình trong vấn đề trao

đổi và xử lý thông tin.

2.1.2. Mục tiêu ra đời và lợi ích khi sử dụng XML

2.1.2.1. Mục tiêu ra đời của XML

Ngày nay, XML đang trở thành một chuẩn chung cho việc trao đổi dữ liệu

cho những ứng dụng chạy trên môi trường Internet. Vì XML cho phép người

dùng có thể tự định nghĩa các thẻ (tag) - những thẻ này làm cho tài liệu XML

đa dạng hơn những ngôn ngữ thông thường như HTML. Như vậy mục tiêu

đặt ra cho sự ra đời XML là gì? Đó là, đầu tiên nó sẽ tương thích với SGML,

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

25

và dễ dàng viết những chương trình để xử lý cho những tài liệu XML. Kế

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

tiếp, những tài liệu XML rõ ràng, dễ đọc, dễ dàng tạo lập. Và điều quan trọng

là nó được hỗ trợ trong nhiều ứng dụng. Nói tóm lại, XML dễ dàng chia sẻ

thông tin qua những định dạng khác nhau thông qua môi trường web. XML

được thiết kế dành cho mọi người, được mọi người sử dụng.

2.1.2.2. Lợi ích khi sử dụng XML

Trong quá trình trưởng thành và phát triển, XML đã đối mặt và đương đầu

với nhiều thử thách trong việc thuyết phục các nhà lập trình rằng XML là sự

lựa chọn hàng đầu vì nó dễ dàng để hiểu, dễ dàng để đọc, và dễ dàng thực

hiện. Sau đây là một số lợi ích khi sử dụng XML

(cid:131) XML có thể tách rời dữ liệu. Sử dụng XML, dữ liệu được chứa trong

các tập tin XML riêng biệt.

(cid:131) XML có thể mô tả thông tin của những đối tượng phức tạp mà cơ sở dữ

liệu quan hệ không thể giải quyết được.

(cid:131) XML có thể dùng để chuyển đổi dữ liệu giữa các hệ thống không tương

thích.

(cid:131) XML dùng để chia sẻ dữ liệu với những tập tin văn bản đơn giản dễ

hiểu.

(cid:131) XML cũng được dùng để lưu trữ dữ liệu, có thể làm cho dữ liệu của

chúng ta hữu ích hơn.

Như vậy, chúng ta đã biết được lợi ích và vai trò của XML trong vấn đề

lưu trữ và trao đổi thông tin. Vấn đề bây giờ là nếu chúng ta muốn có một tài

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

26

liệu XML thì phải làm như thế nào?

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

2.1.3. Một tài liệu XML trông như thế nào?

Mục đích của việc tổ chức thông tin là để con người có thể đọc và hiểu

được những gì mà nó muốn truyền tải. Chúng ta xem một tập tin văn bản sau

F10 Shimano Calcutta 47.76

F20 Bantam Lexica 49.99

đây:

Theo cách tổ chức thông tin của tập tin trên, chúng ta thật khó để hiểu tập

tin này muốn nói lên điều gì. Bây giờ, chúng ta tổ chức tập tin trên theo định

F10

Shimano Calcutta

47.76

F20

Bantam Lexica

49.99

dạng một tài liệu XML một cách đơn giản nhất.

Như vậy, bằng cách sử dụng định dạng XML, người dùng có thể hiểu và

biết được tập tin trên đang muốn truyền tải nội dung gì.

2.1.4. Tạo lập một tài liệu XML

Chúng ta có thể sử dụng trình soạn thảo đơn giản nhất là Notepad để soạn

GVHD: Th.S Nguyễn Trần Minh Thư

SVTH: Nguyễn Thị Kim Phượng T r ư ơ n g K i ề u G i a n g

27

thảo tài liệu XML, nhưng phải tuân thủ theo qui tắc sau:

Tìm hiểu công nghệ XML và xây dựng hệ thống quản lý dịch vụ khách hàng

…..

....

....

Theo định dạng trên, chúng ta thấy tuy tài liệu XML rất đơn giản nhưng

qui định cũng rất nghiêm ngặt, có nghĩa là các tài liệu XML đều xuất phát từ

nút gốc (root), và mỗi phần tử phải có thẻ đóng và thẻ mở “< …/>”.

2.1.5. Những thành phần của một tài liệu XML

(cid:131) Khai báo: Mỗi một tài liệu XML có một chỉ thị khai báo

Định nghĩa tài liệu XML tuân theo chuẩn của W3C và đây là phiên bản

“1.0”

Có thể bạn quan tâm