Tải bản đầy đủ
CHƯƠNG 1: XÁC ĐỊNH YÊU CẦU BÀI TOÁN

CHƯƠNG 1: XÁC ĐỊNH YÊU CẦU BÀI TOÁN

Tải bản đầy đủ

Khi khách hàng đăng ký du lịch chúng tôi sẽ có một phiếu đăng ký cho khách
hàng có thể đăng ký trực tuyến hoặc đăng ký trực tiếp tại công ty.
Nhân viên của website cần xác định các thông tin:
- Khách hàng có yêu cầu dịch vụ gì không?
- Tour du lịch mà khách hàng đăng ký.
- Khách hàng muốn đặt khách sạn hay không, loại khách sạn mà khách
hàng muốn đặt.
- Khách hàng muốn ăn uống nghỉ ngơi tại nhà hàng như thế nào?
- Khách hàng muốn thuê xe không?
- Thông tin về khách hàng: họ tên, địa chỉ, điện thoại, email ...
Với mỗi thông tin về các dịch vụ, khách sạn, nhà hàng, xe cộ, các tour du
lịch, các địa danh chúng ta đều có dữ liệu đầy đủ để khách hàng có thể yên tâm.
Từ đó nhân viên tổng hợp thành các bảng biểu thống kê … từ đó lên danh sách
các tour du lịch cho khách hàng.
Nhân viên cần đưa ra các thông tin sau cho khách hàng được rõ:
- Thông tin về tour du lịch
- Thông tin khuyến mại của các khu du lịch
- Thông tin về các địa danh, danh lam thắng cảnh
- Thông tin khách sạn, nhà hàng, các dịch vụ khác ...
1.2.

Quy trình nghiệp vụ.
Như đã nói ở trên công ty cổ phần dịch vụ du lịch Bắc Giang là đơn vị

chuyên cung cấp các tour du lịch cho khách hàng. Và lĩnh vực kinh doanh là kinh
doanh du lịch. Đối tượng được công ty hướng đến là khách hàng. Cơ cấu tổ chức
của công ty sẽ được phân chia thành: Ban điều hành, nhân viên công ty và khách
hàng của công ty.
- Ban điều hành:
Là bộ phận có chức năng điều hành và phân phối hoạt động của website.
Có thể quản lý và chi phối hoạt động của toàn bộ hệ thống website và hoạt động
của toàn nhân viên. Ngoài ra ban điều hành còn có chức năng phân loại nhân

28

viên. Trong hệ thống website của công ty cổ phần du lich Bắc Giang bộ phận này
được gọi là quản trị hệ thống.
Nó quyết định giá chính thức cho từng hoạt động của webstie. Và ban điều
hành có khả năng thêm, bớt, phân quyền hay xóa loại bỏ các tài khoản cho nhân
viên được ấn định khỏi cơ sở dữ liệu khỏi cơ sở dữ liệu khỏi hệ thống website
của công ty cổ phần du lịch Bắc Giang.
- Nhân viên:
Công ty cổ phần du lịch Bắc Giang thiết kế tour và lên lịch trình cho từng
tour cụ thể. Sau đó, bộ phận là nhân viên của hệ thống website có nhiệm vụ cập
nhật thông tin các tour này lên website với đầy đủ thông tin về giá cả, loại tour,
lịch trình, các địa phương đi đến và hình ảnh minh họa nếu có.
Ngoài ra, bộ phận là nhân viên của hệ thống website còn cập nhật thông
tin, hình ảnh về các địa điểm lịch mà công ty muốn cung cấp cho khách hàng.
Ngoài các tour du lịch trên trang web của công ty còn cung cấp thêm thông tin về
khách sạn của công ty cổ phần du lịch Bắc Giang. Từ đó các thông tin về các
khách sạn này được cập nhập đầy đủ lên website để người dùng có thể cập nhập
khi cần.
Các thông tin đặt tour hay đặt phòng khách sạn của khách hàng đã được
cập nhật vào cơ sở dữ liệu và hiển thị cho người quản trị được phân quyền xem,
hiệu chỉnh, xóa hoặc xác nhận sau khi đã kiểm tra tính chính xác của thông tin
đặt chỗ. Sau khi các thông tin đã được xác thực thì nhân viên của công ty sẽ tiến
hành trao đổi thông tin với khách hàng bằng cách gọi điện hoặc trao đổi qua
email mà khách hàng dùng đăng kí.
- Khách hàng:
Khách hàng vào thăm website sẽ vào xem thông tin chi tiết của từng tour
hiện có hoặc tìm kiếm tour theo các yêu cầu cụ thể về giá cả, địa phương muốn
đến, ngày khởi hành của tour. Sau đó, khách hàng có thể tiến hành đặt chỗ cho
tour đang xem nếu muốn. Nếu khách hàng có nhu cầu về nơi ăn ở nghỉ ngơi tại
Bắc Giang khách hàng còn có thể đặt phòng tại khách sạn của công ty.

29

Khách hàng cũng có thể thông qua trang web để gửi các thông tin yêu cầu
khác về công ty bằng trang Liên hệ. Thông tin này cũng sẽ được truyền xuống cơ
sở dữ liệu và cho phép người quản trị quản lý chúng.
Trong trường hợp đăng kí tour hay đặt phòng khách sạn khách hàng cần
có trách nhiệm đăng kí cho hệ thống bằng những thông tin chính xác nhân để hệ
thống website còn có thể liên hệ lại.
1.3.

Yêu cầu hệ thống.

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

Người dùng ghé thăm website của công ty có thể xem, tìm kiếm thông tin
về các tour du lịch một cách rõ ràng và dễ hiểu nhất. Khách hàng có thể đặt tour
trực tuyến bằng cách điền đầy đủ thông tin cá nhân lên các form giao điện đăng
ký tour của website. Website sẽ cập nhật thông tin đặt chỗ từ các form này trực
tiếp lên cơ sở dữ liệu, và cho phép nhân viên đã được “quản trị hệ thống” phân
quyền thao tác các công việc sau:
- Tìm kiếm các đơn đặt chỗ đã được xác nhận hay chưa xác nhận.
- Xác nhận đơn đặt chỗ hợp lệ, chỉnh sửa thông tin khách hàng và thông
tin đặt chỗ trên từng đơn cụ thể.
- Thống kê tình hình đặt chỗ của từng tour, xem danh sách khách hàng
tham gia các tour đó.
- Thay đổi, thêm mới hoặc xóa bỏ thông tin, hình ảnh về các điểm du lịch
ở các địa phương khác nhau mà công ty muốn giới thiệu cho khách hàng.
- Theo dõi tình hình liên hệ thông qua website của khách hàng, để đáp ứng
kịp thời nhu cầu của họ.
Về tổ chức lưu trữ, thực hiện các yêu cầu:
- Thêm, sửa, xóa các bài viết các đoạn giới thiệu, trình bày về các danh
lam thắng cảnh của tỉnh Bắc Giang.
- Thêm, xóa, sửa thông tin, hình ảnh về các tour du lịch do công ty tổ
chức, phục vụ cho công tác quản lý, thống kê tình hình hoạt động của công ty.
- Thêm, xóa, sửa thông tin, hình ảnh về các điểm du lịch ở từng địa
phương khác nhau

30

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

- Website phải có dung lượng không quá lớn, tốc độ xử lý nhanh.
- Công việc tính toán thực hiện chính xác, không chấp nhận sai sót.
- Sử dụng mã hóa các thông tin nhạy cảm của khách hàng.
- Đảm bảo an toàn dữ liệu khi chạy website trực tuyến.
- Khách hàng còn có thể xem địa danh du lịch mình định đến qua bản đồ
trực tuyến của website.
- Ngoài ra người dùng có thể chia sẻ về website qua mạng xã hội để giới
thiệu cho bạn bè.
1.4. Cách tiếp cận và giải quyết vấn đề:
1.4.1. Cách tiến cận vấn đề.
Ta khảo sát và phân tích vấn đề sau đó làm rõ vấn đề tạo ra cái nhìn tổng
quát về vấn đề cho người lập trình viên. Từ đó người lập trình có thể hiểu được
vấn đề và lập trình để giải quyết vấn đề. Và cuối cùng sản phẩm mà ta thu được
là website của công ty cổ phần du lịch Bắc Giang.
1.4.2. Cách giải quyết vấn đề.
Có nhiều cách để ta giải quyết vấn đề này. Nhưng ở đây chúng ta sẽ sử
dụng phương pháp phân tích thiết kế hướng đối tượng với UML (Unified
Modeling Language) để giải quyết vấn đề đặt ra. Gồm các bước sau:
Mô hình hóa nghiệp vụ: Dựa trên khảo sát thực trạng và yêu cầu của đề tài
ta sử dụng các công cụ của UML để mô hình hóa các nghiệp vụ đó theo mô hình
lặp tăng dần.
Phân tích: Ở bước này ta phân tích và đưa ra những mô hình tổng quát
quan sát trạng thái tĩnh của nghiệp vụ và các Actor (tác nhân). Tiếp đó ta sẽ đưa
ra các Use-case mà tác nhân sử dụng khi tương tác với hệ thống. Các quá trình
được thực hiện bằng cách sử dụng các công cụ của UML.

31

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG
2.1.

Xác định các tác nhân và Use-case của hệ thống.

2.1.1. Xác định danh sách các tác nhân (Actor).

Tác nhân là những gì bên ngoài tương tác với hệ thống. Tập hợp các UC
của hệ thống sẽ hình thành các trường hợp mà hệ thống được sử dụng. Sử dụng
UC để cấu trúc các phần tử có tính hành vi trong mô hình. Nó được hiện thực hóa
bởi phần tử cộng tác.
Bảng danh sách các tác nhân Actor của hệ thống:
STT Tên tác nhân
1
Quản trị hệ
thống

Giới thiệu về tác nhân
Ca sử dụng
Là người đứng đầu hệ thống và Đăng nhập
có toàn quyền trong hệ thống. Đổi mật khẩu.
Người này có trách nhiệm quản Quản lý bài viết.
lý hệ thống và điều hành mọi Quản lý thông tin
công việc của hệ thống website. Tour
Quản lý thông tin

2

Nhân viên

nhân viên
Là những người làm việc tại Đăng nhập
công ty và được giao nhiệm vụ Đổi mật khẩu.
cùng “Quản trị hệ thống ” thực Tìm kiếm
hiện quản lý công việc của Quản lý đăng ký tour
website bằng một số chức năng Quản lý thông tin tour
được ấn định bởi “Quản trị hệ Tư vấn khách hàng
thống”. Trong hệ thống tác
nhân này làm việc dưới quyền
của quản trị hệ thống và cùng
với quản trị hệ thống duy trì

3

Khách hàng

điều hành của hệ thống.
Là đối tượng được nhắm đến Tìm kiếm
của website. Tác nhân này là Đăng ký Tour
khách hàng hay khách hàng Xem thông tin Tour
tiềm năng của công ty du lịch.
32

Website ra đời nhằm mục đích
để cung cấp thông tin về danh
lam, thắng cảnh tại địa phương
cho đối tượng này. Sau đó nó sẽ
là nơi để tác nhân này thực hiện
các giao dịch như đăng ký tour
và đặt phòng tại khách sạn
2.1.2. Xác định danh sách các Use-case của hệ thống.

Dựa vào các nhiệm vụ và các yêu cầu của hệ thống ta thấy có các Usecase sau với từng tác nhân như sau:
2.1.2.1.

Đối với tác nhân là Quản trị hệ thống.

Danh sách các Use – case của tác nhân là Quản trị hệ thống
- Đăng nhập

- Quản lý bài viết.

- Đổi mật khẩu.

- Quản lý Tour

- Tìm kiếm.

- Quản lý thông tin nhân viên

Biểu đồ UC của tác nhân Quản trị hệ thống:

Hình2.: Biểu đồ UC của tác nhân Quản trị hệ thống
2.1.2.2.

Đối với nhân viên:

Danh sách các Use – case của tác nhân là Nhân viên

33

-

- Đăng nhập

-

- Quản lý đăng ký tour

-

- Đổi mật khẩu.

-

- Quản lý thông tin Tour

-

- Tìm kiếm

-

- Tư vấn khách hàng

-

Biểu đồ UC của tác nhân là Nhân viên :
-

-

2.1.2.3.

Hình2.: Biểu đồ UC của tác nhân Nhân Viên

Đối với khách hàng.

-

Danh sách các Use – case của tác nhân là Khách hàng:

-

- Tìm kiếm

-

- Xem thông tin Tour

-

- Đăng ký Tour

-

- Đăng ký khách sạn.

-

- Đăng ký vé.

-

34

-

Biểu đồ UC của tác nhân là Khách hàng:
-

-

2.2.

Hình2. : Biểu đồ UC của tác nhân Khách Hàng

Phân tích các Use-case của hệ thống.

2.2.1. Phân tích các Use–case của tác nhân Quản trị hệ thống.
2.2.1.1.

Use-case “Đăng nhập”.

-

Đặc tả Use-case:

-

:<đăng nhập>

-

Mô tả:
-

Mục đích sử dụng Use-case: Use-case “đăng nhập” được sử dụng

để cho phép quản trị hệ thống, nhân viên đăng nhập vào hệ thống theo quyền
đăng nhập được cấp phát sẵn.
-

Kết quả: Sau khi Use-case này được thực hiện xong người dùng sẽ

được đăng nhập vào hệ thống. Ở đây là quản trị hệ thống được đăng nhập và sau
đó họ có thể toàn quyền quản trị đối với hệ thống. Họ có thể làm đầy đủ các thao
tác mà các thành phần trong hệ thống có thể thực hiện.
-

trị hệ thống.

Người sử dụng Use-case:Ở đây người sử dụng Use-case là quản

-

Kịch bản chính:
-

Kịch bản của các luồng sự kiện bao gồm chính bao gồm:

-

- Hoạt động bắt đầu khi người sử dụng khởi động chương trình và

chọn vào chức năng đăng nhập.
- Người sử dụng đăng nhập vào hệ thống qua use-case bằng

-

usename và mật khẩu bằng cách nhập chúng vào form đăng nhập sau đó xác
nhận đăng nhập.
- Hệ thống nhận đọc thông tin người dùng từ form đăng nhập gồm

-

usename và mật khẩu từ form đăng nhập và kiểm tra điều kiện đăng nhập.
- Sau khi kiểm tra xong mà điều kiện đăng nhập thỏa mãn thì hệ

-

thống sẽ đăng nhập vào chương trình.
-

- Hoạt động kết thúc khi use-case được thực hiện xong.

-

Kịch bản của các luồng sự kiện khác: Khi người dùng sử dụng use-

case này mà đăng nhập sai usename và mật khẩu trong dòng sự kiện chính thì hệ
thống sẽ đưa ra thông báo lỗi. Tác nhân lúc này phải tiến hành đăng nhập lại.
-

Các yêu cầu đặc biệt cho use-case:
- Để đăng nhập vào hệ thống bằng use-case người dùng phải đăng

-

nhập bằng usname và mật khẩu đúng.
- Để đảm bảo tính an toàn và hạn chế sự tấn công vào hệ thống ta

-

cần giới hạn số lần đăng nhập sai vào hệ thống.
2.2.1.2.

Use-case “Đổi mật khẩu”.

-

Đặc tả Use-case:

-

:<đổi mật khẩu>

-

Mô tả
-

Mục đích: được dùng khi tác nhân đã đăng nhập vào hệ thống và

muốn thay đổi lại mật khẩu đăng nhập của mình.
-

Kết quả: sau khi thực hiện use-case người dùng sẽ thay đổi được

mật khẩu mới cho lần đăng nhập kế tiếp.
-

hệ thống.
-

Người sử dụng Use-case:Ở đây người sử dụng Use-case là quản trị

-

Kịch bản chính:
-

Kịch bản của các luồng sự kiện chính bao gồm:

-

- Hoạt động chỉ có thể bắt đầu sau khi người dùng đã đăng nhập

vào hệ thống và chọn vào chức năng thay đổi mật khẩu.
-

- Người dùng sau khi chọn thay đổi mật khẩu mới thì nhập mật

khẩu mới và xác nhận mật khẩu mới vào form nhập và chọn vào lưu.
-

- Hệ thống sẽ lưu mật khẩu mới vào tài khoản người dùng.

-

- Hoạt động của use-case kết thúc khi người dùng thực hiện xong

chức năng thay đổi mật khẩu mới.
-

Kịch bản của các luồng sự kiện khác: Khi người dùng chưa đăng

nhập vào hệ thống bằng tài khoản của mình thì không có khả năng thay đổi mật
khẩu.
-

Yêu cầu đặc biệt của hệ thống:
-

- Để đảm bảo an toàn cho dữ liệu người dùng hệ thống cần đảm

bảo rằng chỉ sau khi đã đăng nhập thì người dùng mới có khả năng thay đổi mật
khẩu của hệ thống.
-

- Sau khi đã thay đổi mật khẩu của hệ thống hệ thống sẽ lưu giữ

mật khẩu này trong cơ sở dữ liệu và những lần đăng nhập kế tiếp người dùng sẽ
phải đăng nhập bằng mật khẩu mới này.
2.2.1.3.

Use-case “Tìm kiếm”.

-

Đặc tả Use-case:

-

:

-

Mô tả:
-

Mục đích: dùng cho quản trị hệ thống, nhân viên và khách hàng sử

dụng để tìm kiếm thông tin.
-

Kết quả: Sau khi thực hiện use-case xong người sử dụng sẽ được

trả về thông tin mà mình đang cần tìm kiếm trong hệ thống.
-

hệ thống.
-

Người sử dụng Use-case: Ở đây người sử dụng Use-case là quản trị

-

Kịch bản chính:
-

Kịch bản của các luồng sự kiện chính bao gồm:

-

- Use-case bắt đầu khi người dùng muốn tìm kiếm một thông tin

nào đó trong hệ thống.
-

- Người sử dụng chọn vào form được sử dụng cho tìm kiếm thông

tin và nhập thông tin cần tìm kiếm vào đó.
-

- Hệ thống sẽ đọc thông tin ngưởi sử dụng nhập vào trong form tìm

kiếm và tiến hành xử lý thông tin.
-

- Thông tin sau khi đã được xử lý được đem đi tìm kiếm trong cơ

sở dữ liệu. Hệ thống kiểm tra trong cơ sở dữ liệu nếu tìm thấy thông tin mà người
dùng đang tìm kiếm thì trả về thông tin đó. Nếu hệ thống không tìm kiếm được
thông tin đó thì đưa ra thông báo thất bại.
- - Hoạt động của use-case kết thúc khi người sử dụng tìm thấy thông tin

đang cần tìm hoặc người dùng chọn kết thúc use-case.
- Kịch bản của các luồng sự kiện khác: Khi tìm kiếm hệ thống cần phân loại

được người dùng và trạng thái đã đăng nhập được chưa. Nếu người dùng chưa
đăng nhập hệ thống chỉ cho phép tìm kiếm một số chức năng giới hạn. Khi đăng
nhập rồi tùy vào người dùng là nhân viên hay quản trị hệ thống mà phân cho họ
mức độ tìm kiếm thông tin trong hệ thống khác nhau. Trong đó quản trị hệ thống
là người được ưu tiên nhất.
-

Yêu cầu đặc biệt cho hệ thống:
-

- Hệ thống cần có các form tìm kiếm thông minh để người dùng dễ

dàng sử dụng. Và sau khi sử dụng thì hệ thống cần trả về kết quả chính xác nhất
cho người dùng.
-

- Hệ thống cần phân loại được cấp độ tìm kiếm để tiết kiệm thời

gian và tài nguyên cho hệ thống.
2.2.1.4.

Use-case “Quản lý bài viết”.

-

Đặc tả Use-case:

-

: