Tải bản đầy đủ (.pdf) (50 trang)

Hệ thống quản lý spa với tiện ích người dùng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.27 MB, 50 trang )

ĐẠI HỌC QUỐC GIA TP. HCM
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
---------------🙦 🕮 🙤---------------

BÁO CÁO ĐỒ ÁN 2
ĐỀ TÀI : HỆ THỐNG QUẢN LÝ SPA VỚI
TIỆN ÍCH NGƯỜI DÙNG
LỚP: SE122.M21.PMCL

GIẢNG VIÊN HƯỚNG DẪN:

Mai Trọng Khang

NHĨM THỰC HIỆN:

Tơ Hồi Quỳnh Vy- 18520405
Huỳnh Thế Anh - 18520448

TP. Hồ Chí Minh, ngày 12 tháng 6 năm 2022


LỜI NĨI ĐẦU
Nhóm xin gửi lời cảm ơn chân thành đến tập thể quý thầy cô Trường Đại
học Công nghệ thông tin – Đại học Quốc gia TP.HCM, quý thầy cơ khoa
Cơng Nghệ Phần Mềm đã giúp nhóm có được những kiến thức cơ bản làm
nền tảng trong việc áp dụng vào thực hiện đồ án 2 . Đặc biệt, nhóm xin gửi
lời cảm ơn và lịng biết ơn sâu sắc nhất tới giảng viên hướng dẫn Mai
Trọng Khang đã giúp nhóm hồn thành tốt đồ án mơn học của mình. Tuy
nhiên, trong q trình thực hiện, nhóm có lẽ cũng sẽ khơng tránh khỏi
những sai lầm, thiếu sót. Chính vì vậy, nhóm rất mong nhận được những
sự góp ý từ phía thầy cơ để hồn thiện những kiến thức mà nhóm đã học


tập và là hành trang để nhóm tiếp tục thực hiện các đề tài khác trong tương
lai. Nhóm xin chân thành cảm ơn!


NHẬN XÉT CỦA GIẢNG VIÊN
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
…………………………………………………………………………………………………………….…
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………….……
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
……………………………………………………………………………………………………….………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
…………………………………………………………………………………………………….…………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………….……………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
……………………………………………………………………………………………….………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
…………………………………………………………………………………………….…………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………….……………………
………………………………………………………………………………………………………………

………………………………………………………………………………………………………………
……………………………………………………………………………………….………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
…………………………………………………………………………………….…………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………….……………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
……………………………………………………………………………….………………………………


………………………………………………………………………………………………………………
………………………………………………………………………………………………………………


MỤC LỤC
1. TỔNG QUAN DỰ ÁN
1.1. Mô tả dự án
1.2. Tôn chỉ dự án
1.3. Bản tuyên bố dự án

6
6
6
7

2. PHÁT BIỂU BÀI TOÁN
2.1. Khảo sát hiện trạng

2.2. Xác định yêu cầu hệ thống

8
8
9

3. CÔNG NGHỆ SỬ DỤNG VÀ CƠ SỞ LÝ THUYẾT
3.1. IDE - Visual Studio Code
3.2. Android Studio
3.3. CI/CD
3.4. Figma
3.5. Github - Lưu trữ source code
3.6. Azure DevOps - Quản trị dự án
3.7. Cơ sở lý thuyết
3.7.1. ReactJs
3.7.2. MySQL

11
11
12
13
14
16
16
18
18
20

4. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
4.1. Tác nhân và usecase tổng quát

4.1.1. Tác nhân
4.1.2. Sơ đồ usecase tổng quát
4.2. Thiết kế kiến trúc
4.2.1. Mơ hình Client-Service
4.2.2. Mơ hình MVVM
4.3. Thiết kế giao diện
4.3.1. Danh sách các màn hình
4.3.1.1. Web Version
4.3.1.2. Mobile Version
4.3.2. Chi tiết các màn hình
4.3.2.1. Web Version
4.3.2.2. Mobile Version

22
22
22
22
24
24
25
25
25
25
26
27
27
33


5. QUY TRÌNH THỬ NGHIỆM

5.1. Phân tích u cầu: (Requirement analysis)
5.1.1. Đầu vào: (Entry Criteria)
5.1.2. Hoạt động: (Activities)
5.2. Lập kế hoạch kiểm thử: (Test planning)
5.2.1. Đầu vào: (Entry Criteria)
5.2.2. Hoạt động: (Activities)
5.3. Thiết kế kịch bản kiểm thử: (Test case)
5.3.1. Đầu vào: (Entry Criteria)
5.3.2. Hoạt động: (Activities)
5.4. Thiết lập môi trường kiểm thử: (Test environment set up)
5.4.1. Đầu vào: (Entry Criteria)
5.4.2. Hoạt động: (Activities)
5.5. Thực hiện kiểm thử: (Test execution)
5.5.1. Đầu vào: (Entry Criteria)
5.5.2. Hoạt động: (Activities)
5.6. Đóng chu trình kiểm thử: (Test cycle closure)
5.6.1. Đầu vào: (Entry Criteria)
5.6.2. Hoạt động: (Activities)
6. QUẢN LÝ CHẤT LƯỢNG
6.1. Tiêu chí/ tiêu chuẩn
6.1.1. Tính năng
6.1.2. Độ tin cậy
6.1.3. Hiệu quả
6.1.4. Khả năng bảo trì
6.2. Quy trình đánh giá
6.2.1. Bước 1
6.2.2. Bước 2
6.2.3 Bước 3
6.2.4. Bước 4


40
40
40
40
40
40
41
41
41
41
42
42
42
43
43
43
43
43
44
45
45
45
45
45
46
46
46
47
47
47


7. TỔNG KẾT VÀ ĐÁNH GIÁ

48

TÀI LIỆU THAM KHẢO

49


1. TỔNG QUAN DỰ ÁN
1.1. Mô tả dự án
-

Trong xã hội hiện đại nhu cầu làm đẹp và chăm sóc sức khỏe ngày càng
được quan tâm cũng như sử dụng thường xuyên hơn. Do đó các spa, các
trung tâm chăm sóc sắc đẹp ngày càng phát triển về cả chiều rộng lẫn
chiều sâu. Với vai trò là người quản lý bạn đã có giải pháp để quán lý số
lượng khách hàng ngày càng tăng lên của mình? Làm sao để nắm bắt
được nhu cầu khách hàng kịp thời cũng như quản lý cơ sở của mình một
cách hiệu quả nhất? Phần mềm quản lý Spa (Spana) sẽ giúp bạn thực
hiện nó một cách dễ dàng và hiệu quả.

-

Phần mềm dễ sử dụng giúp nhân viên bán hàng nhanh chóng và chính
xác. Các bộ phận kết hợp nhịp nhàng mang đến sự hài lòng cho khách
hàng. Quản lý chặt chẽ thẻ thành viên, tích điểm, tiền khách hàng trả
trước. Cung cấp đầy đủ thông tin và hỗ trợ các báo cáo phân tích, giúp
lãnh đạo đưa ra cấc quyết định kịp thời, chính xác. Phần mềm có rất nhiều

tiện ích, đáp ứng gần như hoàn toàn các yêu cầu khắt khe nhất của khách
hàng.

1.2. Tôn chỉ dự án
-

Xây dựng hệ thống quản lý spa gồm nhiều tính năng (lịch hẹn, lịch liệu
trình, nhắc lịch)

-

Xây dựng và phát triển hệ thống trên cả bản web và mobile.


1.3. Bản tuyên bố dự án
1.3.1 Mục đích dự án
Xây dựng hệ thống quản lý spa gồm nhiều tiện ích cần thiết cho 1 cơ sở kinh
doanh spa.
1.3.2 Thời gian dự án
Ngày bắt đầu dự án: 3/2022
Ngày kết thúc dự án: 6/2022
Thời gian thực hiện: 7 tuần


2. Phát biểu bài toán
2.1. Khảo sát hiện trạng
2.1.1. Hiện trạng tin học
- Phân tích các hệ thống cùng lĩnh vực : (MySpa và Easy Spa)
+ Các tính năng nổi bật:


+ Các vấn đề ứng dụng khác gặp phải :


2.1.2. Hiện trạng nghiệp vụ :

2.2. Xác định yêu cầu hệ thống

STT Tên yêu cầu

Khía cạnh

1

Admin

2

Quản lý khách hàng

Quản lý nhân viên

Admin

Chức năng mở rộng

-

Tư vấn tự động

-


Nhắc hẹn tự động

-

Hỗ trợ đặt lịch hẹn online

-

Quản lý membership

-

Thay đổi thông tin nhân
viên (thêm, xóa, sửa)


3

Quản lý bán hàng Admin,

-

(sản phẩm làm đẹp User (nhân
của Spa)

4

viên)


Quản lý sản phẩm (thêm,
xóa, sửa)

-

Quản lý đơn hàng

-

Quản lý kho hàng

-

Quản lý lịch sử bán hàng

Quản lý tài khoản cá User(Khách

-

Đăng ký thành viên

nhân

-

Mua/Hoàn/Trả sản phẩm

-

Đăng ký lịch hẹn


-

Quản lý giỏ hàng

hàng)


3. CÔNG NGHỆ SỬ DỤNG & CƠ SỞ LÝ THUYẾT
3.1. IDE - Visual Studio Code
-

-

-

-

Visual Studio Code (VS Code hay VSC) là một trong những trình soạn
thảo mã nguồn phổ biến nhất được sử dụng bởi các lập trình viên. Nhanh,
nhẹ, hỗ trợ đa nền tảng, nhiều tính năng và là mã nguồn mở chính là
những ưu điểm vượt trội khiến VS Code ngày càng được ứng dụng rộng
rãi.
Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và
macOS, Visual Studio Code được phát triển bởi Microsoft. Nó được xem
là một sự kết hợp hồn hảo giữa IDE và Code Editor.
Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax
highlighting, tự hồn thành mã thông minh, snippets, và cải tiến mã nguồn.
Nhờ tính năng tùy chỉnh, Visual Studio Code cũng cho phép người dùng
thay đổi theme, phím tắt, và các tùy chọn khác.

Đối với dự án, VSCode là công cụ tiện lợi nhất vì hỗ trợ tốt cả 2 framework
là NodeJS và Flutter. Điều này giúp cho các lập trình viên của dự án không
tốn quá nhiều công sức để học cách sử dụng nhiều IDE khác nhau. Gây
lãng phí tài nguyên.


3.2. Android Studio
-

Android Studio là một phần mềm bao gồm các bộ công cụ khác nhau dùng
để phát triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android
như các loại điện thoại smartphone, các tablet... Android Studio được
đóng gói với một bộ code editor, debugger, các cơng cụ performance tool
và một hệ thống build/deploy (trong đó có trình giả lập emulator để giả lập
mơi trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phép các
lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới
phức tạp.

-

Việc xây dựng một ứng dụng mobile (hoặc tablet) bao gồm rất nhiều các
công đoạn khác nhau. Đầu tiên chúng ta sẽ viết code ứng dụng sử dụng
máy tính cá nhân hoặc laptop. Sau đó chúng ta cần build ứng dụng để tạo
file cài đặt. Sau khi build xong thì chúng ta cần copy file cài đặt này vào
thiết bị mobile (hoặc table) để tiến hành cài đặt ứng dụng và chạy kiểm thử
(testing). Bạn thử tưởng tượng nếu với mỗi lần viết một dòng code bạn lại
phải build ứng dụng, cài đặt trên điện thoại hoặc tablet và sau đó chạy thử
thì sẽ vô cùng tốn thời gian và công sức. Android Studio được phát triển
để giải quyết các vấn đề này. Với Android Studio tất cả các công đoạn trên
được thực hiện trên cùng một máy tính và các quy trình được tinh gọn tới

mức tối giản nhất.


3.3. CI/CD
-

CI là Continuous Integration. Nó là phương pháp phát triển phần
mềm yêu cầu các thành viên của team tích hợp cơng việc của họ
thường xun, mỗi ngày ít nhất một lần. Mỗi tích hợp được "build"
tự động (bao gồm cả test) nhằm phát hiện lỗi nhanh nhất có thể. Cả
team nhận thấy rằng cách tiếp cận này giảm thiểu vấn đề tích hợp
và cho phép phát triển phần mềm nhanh hơn.
Lợi ích của việc sử dụng CI:

● Giảm thiểu rủi ro nhờ việc phát hiện lỗi và fix sớm, tăng chất lượng
phần mềm nhờ việc tự động test và inspect (đây cũng là một trong
những lợi ích của CI, code được inspect tự động dựa theo config đã
cài đặt, đảm bảo coding style, chẳng hạn một function chỉ được dài
khơng q 10 dịng code ...)
● Giảm thiểu những quy trình thủ cơng lặp đi lặp lại (build css, js,
migrate, test...), thay vì đó là build tự động, chạy test tự động


● Sinh ra phần mềm có thể deploy ở bất kì thời gian, địa điểm
-

Trong khi Continuous Integration là quy trình để build và test tự
động, thì Continuous Delivery (tạm dịch là chuyển giao liên tục) lại
nâng cao hơn một chút, bằng cách triển khai tất cả thay đổi về code
(đã được build và test) đến môi trường testing hoặc staging.

Continuous Delivery cho phép developer tự động hóa phần testing
bên cạnh việc sử dụng unit test, kiểm tra phần mềm qua nhiều
thước đo trước khi triển khai cho khách hàng (production). Những
bài test này bao gồm UI testing, load testing, integration testing, API
testing... Nó tự động hồn tồn quy trình release phần mềm.

3.4. Figma
-

Figma là một công cụ thiết kế vector và thử nghiệm sản phẩm website và
app. Công cụ dựa trên nền tảng đám mây để người dùng có thể cộng tác
trong các dự án và làm việc ở bất cứ đâu.


-

Mặc dù Figma có chức năng rất giống các cơng cụ thiết kế khác, nhưng
điểm khác biệt chính là khả năng làm việc với các nhóm trong các dự án.
Đến nay, Figma có lẽ là lựa chọn phù hợp nhất hiện có.

-

Những lợi ích Figma đem lại:
● Figma là một cơng cụ miễn phí
● Sử dụng được trên 2 nền tảng Windows và MacOS (thay vì như
sketch chỉ dùng được trên MacOS)
● Thiết kế thời gian thực: Mọi người trong team có thể vẽ cùng một dự
án cùng một lúc và thấy được những thay đổi trong bản thiết kế một
cách nhanh nhất
● Data được lưu trên hệ thống máy chủ: Các file thiết kế figma sẽ

được tự động lưu bất cứ lúc nào trên hệ thống máy chủ (không sợ
quên lưu file) và có thể tải xuống để lưu lại trong local
● Có cơ chế comment trực tiếp trên file thiết kế: Việc này sẽ giúp nhận
phản hồi hoặc ghi chú khi làm việc đội nhóm

-

Nhược điểm lớn nhất của Figma:
● Phải có internet thì Figma mới hoạt động được


3.5. Github - Lưu trữ source code
-

-

GitHub là một dịch vụ lưu trữ trên web dành cho các dự án có sử dụng hệ
thống kiểm sốt Git revision. Github có đầy đủ những tính năng của Git,
ngồi ra nó cịn bổ sung những tính năng về social để các developer
tương tác với nhau.
Vài thông tin về GIT:
● Là công cụ giúp quản lý source code tổ chức theo dạng dữ liệu
phân tán.
● Giúp đồng bộ source code của team lên 1 server.
● Hỗ trợ các thao tác kiểm tra source code trong quá trình làm việc
(diff, check modifications, show history, merge source, …)

3.6. Azure DevOps - Quản trị dự án
-


Azure DevOps Services sẽ cung cấp cho bạn bộ tính năng tích hợp,
mà dựa vào đó có thể truy cập thơng qua trình duyệt web hoặc ứng
dụng IDE. Những dịch vụ đó bao gồm:

● Azure Repos: cung cấp kho kiểm sốt phần mềm Git hoặc Team
Foundation Version Control (TFVC), giúp bạn kiểm soát chặt chẽ
mọi mã nguồn.


● Azure Pipelines: cung cấp dịch vụ xây dựng và phát hành nhằm hỗ
trợ khả năng tích hợp và chuyển giao liên tục cho ứng dụng.
● Azure Boards: cung cấp bộ cung cụ Agile nhằm giúp bạn có thể lên
kế hoạch, theo dõi tiến độ cơng việc, rà sốt lỗi code cũng như các
vấn đề liên quan nhờ phương pháp Kanban và Scrum.
● Azure Test Plans: cung cấp công cụ giúp kiểm tra ứng dụng bằng
cả phương pháp thủ công và tự động.
● Azure Artifacts: cho phép chia sẻ các gói Maven, npm và NuGet từ
các nguồn cơng khai cũng như các nhân.
-

Bên cạnh đó, các cơng cụ cộng tác bao gồm cả dashboard có thể tùy
chỉnh với các tiện ích khác nhằm chia sẻ thơng tin, tiến trình và xu
hướng…

-

Azure Boards cung cấp cho bạn một tập hợp các loại mục công việc được
xác định trước để hỗ trợ các tính năng theo dõi, câu chuyện người dùng,
lỗi và nhiệm vụ. Bạn có thể nhanh chóng thiết lập và vận hành bằng cách
sử dụng sản phẩm tồn đọng hoặc bảng Kanban của mình. Dù bạn sử

dụng phương pháp Agile nào, Azure Boards đều hỗ trợ bạn các công cụ
cần thiết để triển khai phương pháp đó.

-

Khi tổ chức của bạn phát triển, bạn có thể thêm các nhóm để cung cấp
cho họ quyền tự chủ theo dõi công việc theo nhu cầu của họ.
● Visual, interactive tools - Công cụ trực quan, tương tác:
Các công cụ trực quan giúp các nhóm nhanh chóng xem và chia sẻ
tiến trình. Ví dụ, với bảng Kanban bạn có thể thêm cơng việc, cập
nhật trạng thái công việc và theo dõi công việc đang thực hiện.
● Easy to customize - Dễ dàng tùy chỉnh
Bảng Kanban, bảng tác vụ và kế hoạch phân phối dễ dàng định cấu
hình và tùy chỉnh thơng qua giao diện người dùng. Ví dụ: với bảng
Kanban, bạn có thể định cấu hình cột, làn bơi, kiểu thẻ, trường hiển


thị trên thẻ, v.v. Bạn có thể định cấu hình tất cả chúng thơng qua hộp
thoại cấu hình chung.

3.7. Cơ sở lý thuyết
3.7.1. ReactJs
- ReactJS là một opensource được phát triển bởi Facebook, ra mắt vào
năm 2013, bản thân nó là một thư viện Javascript được dùng để để xây
dựng các tương tác với các thành phần trên website. Một trong những
điểm nổi bật nhất của ReactJS đó là việc render dữ liệu không chỉ thực
hiện được trên tầng Server mà còn ở dưới Client nữa.
-

ReactJS là một thư viện JavaScript chuyên giúp các nhà phát triển xây

dựng giao diện người dùng hay UI. Trong lập trình ứng dụng front-end, lập
trình viên thường sẽ phải làm việc chính trên 2 thành phần sau: UI và xử lý
tương tác của người dùng. UI là tập hợp những thành phần mà bạn nhìn
thấy được trên bất kỳ một ứng dụng nào, ví dụ có thể kể đến bao gồm:
menu, thanh tìm kiếm, những nút nhấn, card,… Giả sử bạn đang lập trình
một website thương mại điện tử, sau khi người dùng chọn được sản phẩm


ưng ý rồi và nhấn vào nút “Thêm vào giỏ hàng”, thì việc tiếp theo mà bạn
phải làm đó là thêm sản phẩm được chọn vào giỏ hàng và hiển thị lại sản
phẩm đó khi user vào xem => xử lý tương tác.

-

Trước khi có ReactJS, lập trình viên thường gặp rất nhiều khó khăn trong
việc sử dụng “vanilla JavaScript”(JavaScript thuần) và JQuery để xây
dựng UI. Điều đó đồng nghĩa với việc quá trình phát triển ứng dụng sẽ lâu
hơn và xuất hiện nhiều bug, rủi ro hơn. Vì vậy vào năm 2011, Jordan
Walke – một nhân viên của Facebook đã khởi tạo ReactJS với mục đích
chính là cải thiện quá trình phát triển UI.

-

Ưu điểm của ReactJS:
● Phù hợp với đa dạng thể loại website: ReactJS khiến cho việc khởi
tạo website dễ dàng hơn bởi vì bạn khơng cần phải code nhiều như
khi tạo trang web thuần chỉ dùng JavaScript, HTML và nó đã cung
cấp cho bạn đủ loại “đồ chơi” để bạn có thể dùng cho nhiều trường
hợp.
● Tái sử dụng các Component: Nếu bạn xây dựng các Component đủ

tốt, đủ flexible để có thể thoả các “yêu cầu” của nhiều dự án khác
nhau, bạn chỉ tốn thời gian xây dựng ban đầu và sử dụng lại hầu
như tồn bộ ở các dự án sau. Khơng chỉ riêng mỗi ReactJS mà các
framework hiện nay cũng đều cho phép chúng ta thực hiện điều đó,
ví dụ Flutter chẳng hạn.
● Có thể sử dụng cho cả Mobile application: Hầu hết chúng ta đều biết
rằng ReactJS được sử dụng cho việc lập trình website, nhưng thực
chất nó được sinh ra khơng chỉ làm mỗi đều đó. Nếu bạn cần phát
triển thêm ứng dụng Mobile, thì hãy sử dụng thêm React Native –
một framework khác được phát triển cũng chính Facebook, bạn có
thể dễ dàng “chia sẻ” các Component hoặc sử dung lại các
Business Logic trong ứng dụng.
● Thân thiện với SEO: SEO là một phần không thể thiếu để đưa thông
tin website của bạn lên top đầu tìm kiếm của Google. Bản chất
ReactJS là một thư viện JavaScript, Google Search Engine hiện nay


đã crawl và index được code JavaScript, tuy nhiên bạn cũng cần
thêm một vài thư viện khác để hỗ trợ điều này nhé!
● Debug dễ dàng: Facebook đã phát hành 1 Chrome extension dùng
trong việc debug trong quá trình phát triển ứng dụng. Điều đó giúp
tăng tốc q trình release sản phẩm cung như q trình coding của
bạn.
● Cơng cụ phát triển web hot nhất hiện nay: Nếu bạn nhìn vào số liệu
thống kê từ Google Trend ở Việt Nam ở hình bên dưới, dạo lướt
qua các trang tuyển dụng hàng đầu ở Việt Nam như Topdev, Itviec,
v.v bạn sẽ thấy số lượng tuyển dụng cho vị trí React Developer là
cực kỳ lớn cùng với mức lương vô cùng hấp dẫn và độ phổ biến
hiện tại của ReactJS trên thị trường Việt Nam là như thế nào.


3.7.2. MySQL
- MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới
và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng
dụng. Vì MySQL là hệ quản trị cơ sở dữ liệu tốc độ cao, ổn định và dễ sử
dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp
một hệ thống lớn các hàm tiện ích rất mạnh. Với tốc độ và tính bảo mật
cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên
internet. Người dùng có thể tải về MySQL miễn phí từ trang chủ. MySQL


có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho
các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD,
NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS,..
-

MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu
quan hệ sử dụng Ngơn ngữ truy vấn có cấu trúc (SQL).

-

MySQL được sử dụng cho việc bổ trợ Node.js, PHP, Perl, và nhiều ngôn
ngữ khác, làm nơi lưu trữ những thông tin trên các trang web viết bằng
NodeJs, PHP hay Perl,...


4. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
4.1. Tác nhân và use case tổng quát :
4.1.1. Tác nhân

STT


Tên Actor

Ý nghĩa/Ghi chú

1

Customer

Là người sử dụng dịch vụ. Có thể sử dụng
hệ thống để trải nghiệm spa hoặc mua các
sản phẩm của spa.

2

Admin (Manager)

Là người nắm tất cả các quyền trong hệ
thống. Quản lý khách hàng, đơn hàng, quản
lý nhân viên, quản lý lịch hẹn, quản lý spa
online.

3

Staff

Là người hỗ trợ Admin (được phân quyền),
quản lý hệ thống spa online, quản lý khách
hàng


4.1.2. Sơ đồ use case tổng quát



4.2. Thiết kế kiến trúc
4.2.1. Mơ hình Client-Service

-

Hệ thống áp dụng mơ hình Client-Service, tất cả xử lý tình huống, kiểm tra
tính hợp lệ, thao tác đến CSDL của hệ thống sẽ do server đảm nhiệm. Sau
nhận được yêu cầu từ Client (app) gửi đến thông qua kết nối API, server
xử lý và trả kết quả lại cho client. Việc giao tiếp giữa Server và Database
sẽ do các business components thực hiện.


×