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

Xây dựng hệ thống website đặt lịch khám bệnh

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 (3.56 MB, 76 trang )

ĐẠI HỌC ĐÀ NẴNG
PHÂN HIỆU TẠI KON TUM

HOÀNG KHẮC CƯỜNG

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP
XÂY DỰNG HỆ THỐNG WEBSITE
ĐẶT LỊCH KHÁM BỆNH

Kon Tum, tháng 4 năm 2022


ĐẠI HỌC ĐÀ NẴNG
PHÂN HIỆU TẠI KON TUM

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP

XÂY DỰNG HỆ THỐNG WEBSITE
ĐẶT LỊCH KHÁM BỆNH

GIẢNG VIÊN HƯỚNG DẪN : Th.S LÊ THỊ BẢO YẾN
SINH VIÊN THỰC HIỆN

: HOÀNG KHẮC CƯỜNG

LỚP

: K11TT

MSSV


: 17152480201012

Kon Tum, tháng 4 năm 2022


LỜI CẢM ƠN
Để hoàn thành đề tài đồ án tốt nghiệp này trước hết em xin gửi đến quý thầy cô
giáo trong khoa công nghệ, Trường Phân hiệu Đại học Đà Nẵng tại Kon Tum đã tận tuỵ
truyền đạt kiến thức cho em trong quảng thời gian qua để em có thể hồn thành được đề
tài này.
Đặc biệt em xin gửi đến cô Lê Thị Bảo Yến, người đã tận tình hướng dẫn, giúp đỡ
em hồn thành đề tài này.
Vì kiến thức bản thân cịn hạn chế, trong q trình làm đề tài này em khơng tránh
khỏi sai sót, kính mong nhận được sự góp ý và giúp đỡ từ thầy cơ. Em xin chân thành
cảm ơn!
Sinh viên
Hồng Khắc Cường


MỤC LỤC
CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI...........................................................................1
1.1. TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU ..............................................................1
1.2. LÝ DO CHỌN ĐỀ TÀI .........................................................................................1
1.3. MỤC TIÊU NGHIÊN CỨU ...................................................................................1
1.3.1 Lý thuyết ...........................................................................................................1
1.3.2 Công nghệ .........................................................................................................1
1.4. PHƯƠNG PHÁP NGHIÊN CỨU .........................................................................2
1.4.1. Khảo sát thực tế ...............................................................................................2
1.4.2. Lý thuyết ..........................................................................................................2
1.4.3. Công nghệ ........................................................................................................2

1.5. PHẠM VI ỨNG DỤNG .........................................................................................2
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT .............................................................................3
2.1. LÝ THUYẾT SỬ DỤNG .......................................................................................3
2.1.1. Mơ hình MVC ..................................................................................................3
2.1.2 Mơ hình thương mại điện tử ...........................................................................4
2.2. CÔNG NGHỆ SỬ DỤNG ......................................................................................6
2.2.1. Frontend ...........................................................................................................6
2.2.2 Backend .............................................................................................................9
2.3. CÔNG CỤ SỬ DỤNG ..........................................................................................12
2.3.1. Visual code .....................................................................................................12
2.3.2. Postman ..........................................................................................................12
2.3.3 XAMPP ...........................................................................................................13
CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG .......................................14
3.1. ĐỐI TƯỢNG VÀ CHỨC NĂNG CỦA HỆ THỐNG .......................................14
3.1.1. Chức năng của khách hàng ..........................................................................14
3.1.2 Chức năng của bác sĩ .....................................................................................14
3.1.3 Chức năng của Admin ...................................................................................14
3.2. PHÂN TÍCH YÊU CẦU CHỨC NĂNG.............................................................15
3.2.1. Khách hàng ....................................................................................................15
3.2.2. Bác sĩ ...............................................................................................................16
3.2.3. Admin .............................................................................................................17
3.3. THIẾT KẾ HỆ THỐNG ......................................................................................25
3.3.1. Sơ đồ Use-Case ..............................................................................................25
3.3.2. Đặc tả sơ đồ Use-Case ...................................................................................25
3.3.3. Sơ đồ tuần tự đối với khách hàng ................................................................28
3.3.4. Sơ đồ tuần tự đối với bác sĩ ..........................................................................34
3.3.5. Sơ đồ tuần tự đối với admin .........................................................................37
3.3.6. Sơ đồ lớp .........................................................................................................48
3.3.7. Lược đồ quan hệ CSDL ................................................................................49
i



CHƯƠNG 4 KẾT QUẢ...............................................................................................52
4.1. GIAO DIỆN PHÍA KHÁCH HÀNG ..................................................................52
4.1.1. Giao diện Trang chủ .....................................................................................52
4.1.2. Giao diện trang xem thông tin chun khoa...............................................54
4.1.3. Trang xem thơng tin phịng khám ...............................................................54
4.1.4. Trang giới thiệu phịng khám ......................................................................55
4.1.5. Trang xem thơng tin phịng khám ...............................................................55
4.1.6. Trang xem thơng tin bác sĩ ...........................................................................56
4.1.7. Trang đặt lịch khám bệnh ............................................................................56
4.2. GIAO DIỆN PHÍA BÁC SĨ .................................................................................57
4.2.1. Trang đăng nhập ...........................................................................................57
4.2.2. Giao diện trang làm việc của bác sĩ .............................................................57
4.2.3. Trang thêm lịch khám ..................................................................................58
4.2.4. Trang xem lịch hẹn........................................................................................58
4.3. GIAO DIỆN PHÍA ADMIN ................................................................................59
4.3.1. Trang quản lý người dùng ............................................................................59
4.3.2. Trang xem chi tiết thông tin bác sĩ ..............................................................59
4.3.3. Trang cập nhật thông tin bác sĩ ...................................................................60
4.3.4. Trang xoá người dùng ..................................................................................60
4.3.5. Trang quản lý phịng khám ..........................................................................61
4.3.6. Trang xem thơng tin chi tiết phịng khám ..................................................61
4.3.7. Trang cập nhật thơng tin phịng khám .......................................................62
4.3.8. Trang quản lý chuyên khoa ..........................................................................62
4.3.9. Trang quản lý bài viết ...................................................................................63
4.3.10. Trang quản lý bệnh nhân ...........................................................................63
CHƯƠNG 5 KẾT LUẬN ............................................................................................64
5.1. KẾT LUẬN ...........................................................................................................64
5.1.1. Kết quả đạt được ...........................................................................................64

5.1.2. Hạn chế ...........................................................................................................64
5.2. HƯỚNG PHÁT TRIỂN .......................................................................................64
DANH MỤC TÀI LIỆU THAM KHẢO ...................................................................65

ii


DANH MỤC BẢNG
Số hiệu bảng
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
3.17.
3.18.
3.19.
3.20.
3.21.

3.22.
3.23.
3.24.
3.25.
3.26.
3.27.
3.28.
3.29.
3.30.
3.31.
3.32.
3.33.
3.34.
3.35.
3.36.
3.37.

Tên bảng
Chức năng của khách hàng
Chức năng của bác sĩ
Chức năng của Admin
Phân tích chức năng tìm kiếm thơng tin
Phân tích chức năng xem thơng tin bác sĩ
Phân tích chức năng xem tin chuyên khoa
Phân tích chức năng xem thơng tin phịng khám
Phân tích chức năng xem thơng tin cẩm nang
Phân tích chức năng xem lịch trình bác sĩ
Phân tích chức năng đặt lịch khám bệnh
Phân tích chức năng đăng nhập
Phân tích chức năng đăng xuất

Phân tích chức năng thêm lịch trình
Phân tích chức năng xem lịch trình
Phân tích chức năng đăng nhập
Phân tích chức năng đăng xuất
Phân tích chức năng hiển thị danh sách tài khoản
Phân tích chức năng thêm tài khoản
Phân tích chức năng cập nhật tài khoản
Phân tích chức năng xố tài khoản
Phân tích chức năng xem chi tiết tài khoản
Phân tích chức năng hiển thị danh sách tài khoản
Phân tích chức năng thêm chuyên khoa
Phân tích chức năng cập nhật chuyên khoa
Phân tích chức năng xố chun khoa
Phân tích chức năng xem chi tiết chuyên khoa
Phân tích chức năng hiển thị danh sách phịng khám
Phân tích chức năng thêm phịng khám
Phân tích chức năng cập nhật phịng khám
Phân tích chức năng xố phịng khám
Phân tích chức năng xem chi tiết phịng khám
Phân tích chức năng hiển thị danh sách tài khoản
Phân tích chức năng thêm cẩm nang
Phân tích chức năng cập nhật cẩm nang
Phân tích chức năng xố cẩm nang
Phân tích chức năng xem chi tiết cẩm nang
Phân tích chức năng thêm lịch trình làm việc
iii

Trang
14
14

14
15
15
15
15
16
16
16
16
17
17
17
17
18
18
18
18
19
19
19
20
20
20
20
21
21
21
22
22
22

22
23
23
23
24


3.38.
3.39.
3.40
3.41
3.42
3.43
3.44.
3.45.
3.46.
3.47.
3.48.
3.49.
3.50.
3.51.
3.52.
3.53.
3.54.
3.55.
3.56.
3.57.
3.58.
3.59.
3.60.

3.61.
3.62.
3.63.
3.64.
3.65.
3.66.
3.67.
3.68.
3.69.
3.70.
3.71.
3.72.
3.73.
3.74.
3.75.

Phân tích chức năng tìm lịch trình làm việc
Phân tích chức năng xác thực thực bệnh nhân
Đặc tả sơ đồ use case đăng nhập
Đặc tả sơ đồ usecase quản lý lịch khám
Đặc tả sơ đồ usecase quản lý tài khoản
Đặc tả sơ đồ usecase quản lý chuyên khoa
Giải thích sơ đồ tuần tự tìm kiếm bác sĩ
Giải thích sơ đồ tuần tự tìm kiếm phịng khám
Giải thích sơ đồ tuần tự tìm kiếm chun khoa
Giải thích sơ đồ tuần tự xem thơng tin bác sĩ
Giải thích sơ đồ tuần tự xem thơng tin chi tiết phịng
khám
Giải thích sơ đồ tuần tự xem thơng tin chun khoa
Giải thích sơ đồ tuần tự xem thơng tin cẩm nang

Giải thích sơ đồ tuần tự đặt lịch
Giải thích sơ đồ tuần tự đăng nhập
Giải thích sơ đồ tuần tự đăng xuất
Giải thích sơ đồ tuần tự thêm mới lịch trình
Giải thích sơ đồ tuần tự xem lịch trình khám
Giải thích sơ đồ tuần tự đăng nhập
Giải thích sơ đồ tuần tự đăng xuất
Giải thích sơ đồ tuần tự xem thơng tin bác sĩ
Giải thích sơ đồ tuần tự xem thơng tin chun khoa
Giải thích sơ đồ tuần tự xem thơng tin phịng khám
Giải thích sơ đồ tuần tự xem thơng tin cẩm nang
Giải thích sơ đồ tuần tự thêm mới lịch trình
Giải thích sơ đồ tuần tự thêm mới lịch trình
Giải thích sơ đồ tuần tự thêm mới chuyên khoa
Giải thích sơ đồ tuần tự thêm mới cẩm nang
Giải thích sơ đồ tuần tự nhật thơng tin người dùng
Giải thích sơ đồ tuần tự nhật thơng tin phịng khám
Giải thích sơ đồ tuần tự nhật thơng tin chun khoa
Giải thích sơ đồ tuần tự nhật thơng tin chun khoa
Mơ tả thuộc tính sơ đồ lớp
Bảng khách hàng
Bảng users
Bảng bác sĩ
Bảng phòng khám
Bảng chuyên khoa
iv

24
24
25

26
27
27
28
29
30
31
32
32
33
34
34
35
36
36
37
38
38
39
39
40
41
42
43
44
45
46
47
48
49

50
50
50
51
51


3.76.
3.77.

Bảng đặt lịch
Bảng lịch sử

51
51

v


DANH MỤC HÌNH
Số hiệu hình
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
2.9.

2.10.
2.11.
2.12.
2.13.
2.14.
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
3.17.
3.18.
3.19.
3.20.
3.21.
3.22.
3.23.

Tên hình

Mơ hình MVC
Luồng tương tác giữa các thành phần trong MVC
Mơ hình B2B trong thương mại điện tử
Mơ hình B2C trong thương mại điện tử
Ngơn ngữ lập trình HTML
Ngơn ngữ CSS
Ngơn ngữ lập trình JavaScript
Thư viện Bootstrap
Ngơn ngữ lập trình NodeJS
Express framework
Hệ quản trị cơ sở dữ liệu MySQL
Phần mềm Visual Studio Code
Phần mềm Postman
Công cụ XAMPP
Sơ đồ Use-Case
Sơ đồ Use-Case đăng nhập
Sơ đồ Use-Case quản lý lịch khám
Sơ đồ Use-Case quản lý tài khoản
Sơ đồ Use-Case quản lý chuyên khoa
Sơ đồ tuần tự tìm kiếm bác sĩ
Sơ đồ tuần tự tìm kiếm phịng khám
Sơ đồ tuần tự tìm kiếm chuyên khoa
Sơ đồ tuần tự xem chi tiết thông tin bác sĩ
Sơ đồ tuần tự xem chi tiết thơng tin phịng khám
Sơ đồ tuần tự xem chi tiết thông tin chuyên khoa
Sơ đồ tuần tự xem chi tiết thông tin cẩm nang
Sơ đồ tuần tự đặt lịch
Sơ đồ tuần tự đăng nhập
Sơ đồ tuần tự đăng xuất
Sơ đồ tuần tự thêm mới lịch trình

Sơ đồ tuần tự xem lịch trình khám
Sơ đồ tuần tự đăng nhập
Sơ đồ tuần tự đăng xuất
Sơ đồ tuần tự xem thông tin bác sĩ
Sơ đồ tuần tự xem thông tin chun khoa
Sơ đồ tuần tự xem thơng tin phịng khám
Sơ đồ tuần tự xem thông tin cẩm nang
vi

Trang
3
4
5
5
6
7
8
9
10
11
11
12
12
13
25
26
26
27
28
28

29
30
31
31
32
33
33
34
35
35
36
37
37
38
38
39
40


3.24.
3.25.
3.26.
3.27.
3.28.
3.29.
3.30.
3.31.
3.32.
3.33.
4.1.

4.2.
4.3.
4.4
4.5.
4.6.
4.7.
4.8.
4.9.
4.10.
4.11.
4.12.
4.13.
4.14.
4.15.
4.16.
4.17.
4.18.
4.19.
4.20.
4.21.
4.22.
4.23.
4.24.

Sơ đồ tuần tự thêm mới lịch trình
Sơ đồ tuần tự thêm mới phòng khám
Sơ đồ tuần tự thêm mới chuyên khoa
Sơ đồ tuần tự thêm mới cẩm nang
Sơ đồ tuần tự cập nhật thông tin người dùng
Sơ đồ tuần tự cập nhật thơng tin phịng khám

Sơ đồ tuần tự cập nhật thông tin chuyên khoa
Sơ đồ tuần tự cập nhật thông tin cẩm nang
Sơ đồ lớp
Lược đồ quan hệ CSDL
Trang chủ website
Trang chủ website
Trang chủ website
Trang chủ website
Trang xem thơng tin chun khoa
Trang xem thơng tin lịch trình phịng khám
Trang xem thơng tin giới thiệu phịng khám
Trang xem thơng tin khám và điều trị
Trang xem thông tin bác sĩ
Trang đặt lịch khám bệnh
Trang đăng nhập
Giao diện trang bác sĩ
Trang thêm lịch khám
Trang xem lịch hẹn
Trang quản lý người dùng
Trang xem thông tin bác sĩ
Trang cập nhật thông tin bác sĩ
Trang xố người dùng
Trang quản lý phịng khám
Trang xem thơng tin phịng khám
Trang cập nhật thơng tin phịng khám
Trang quản lý chuyên khoa
Trang quản lý bài viết
Trang quản bệnh nhân

vii


40
41
42
43
44
45
46
47
48
49
52
52
53
53
54
54
55
55
56
56
57
57
58
58
59
59
60
60
61

61
62
62
63
63


CHƯƠNG 1
TỔNG QUAN ĐỀ TÀI
1.1. TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU
Trong cuộc sống ngày nay ứng dụng công nghệ thông tin vào đời sống như là một
yếu tố tất yếu cho việc phát triển thời kỳ công nghệ 4.0 và nó đóng vai trị cho việc phát
triển của đất nước, dân tộc và toàn thế giới.
Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở
nên không thể thiếu trong cuộc sống hằng ngày. Qua đó có thể thấy Internet giúp chúng
ta xử lý các công việc nhanh gọn hơn so với các cách làm truyền thống. Mà qua đó
chung ta chỉ cần ngồi ở nhà cùng với một chiếc srmatphone hay máy tính trên tay có kết
nối Internet là có thể đặt các loại dịch vụ khác nhau mà mình mà khơng cần đến trực tiếp
tại nơi cung cấp dịch vụ và chờ đến lượt qua đó giảm bớt đi thời gian chờ đợi không cần
thiết.
1.2. LÝ DO CHỌN ĐỀ TÀI
Ngày nay việc khám chữa bệnh là một trong những nhu cầu rất cần thiết nhưng
việc tốn thời gian làm các thủ tục trước khi khám bệnh là một vấn đề gây nhức nhối đối
với mọi người.
So với việc phải đến cơ sở y tế làm thủ tục và chờ đợi một khoảng thời gian khá
lâu thì việc chỉ cần ngồi ở nhà và với thiết bị có kết nối Internet để đặt lịch khám bệnh
thì sẽ rút ngắn được khoảng thời gian chờ đợi. Hơn thế nữa, với lợi thế của công nghệ
kỹ thuật số nên việc truyền tải thông tin nhanh chóng, thuận tiện, dễ dàng và chính xác.
Do đó em đã quyết định chọn đề tài “Xây dựng hệ thống website đặt lịch khám bệnh”
với mong muốn giúp người sử dụng có nhu cầu đặt lịch tiết kiệm được thời gian thay vì

chờ đợi, cũng như giúp bản thân phát huy khả năng ứng dụng các công nghệ trong việc
phát triển website chuyên nghiệp.
1.3. MỤC TIÊU NGHIÊN CỨU
1.3.1 Lý thuyết
 Nắm vững mơ hình, cách thức hoạt động của mơ hình MVC trong việc thiết kế
webiste
 Nắm vững mơ hình B2B trong kinh doanh.
1.3.2 Cơng nghệ
 Nắm vững kiến thức, công nghệ với ngôn ngữ, HTML, CSS Javascript trong
thiết kế cũng như lập trình website.
 Nắm vững được thư viện Express để viết các API
 Kết nối dữ liệu và quản trị được hệ CSDL MySQL
 Quản lý được source code của dự án với GitHub
 Triển khai hệ thống lên doamin

1


1.4. PHƯƠNG PHÁP NGHIÊN CỨU
1.4.1. Khảo sát thực tế
 Khảo sát nhu cầu, yêu cầu của khách hàng để lấy thơng tin, số liệu qua đó phát
triển các chức năng theo số đơng của khách hàng đã đóng góp bằng cách:
+ Thu thập bằng biện pháp dùng form khảo sát để thu thập các thơng tin của
người có nhu cầu sử dụg đăng ký.
+ Kết hợp phỏng vấn người dùng có mong muốn sử dụng một website đặt lịch
khám bệnh thì có những chức năng gì là cần thiết.
 Tham khảo các webiste trên mạng có đề tài tương tự cũng như tự bản thân trải
nghiệm các website đó và sau đó đúc kết được những gì cốt lõi nhất và biến cái của
người khác thành cái của bản thân.
1.4.2. Lý thuyết

Nghiên cứu cách thức hoạt động của mơ hình MVC cũng như mơ hình B2B qua
các video, bài viết trên mạng Internet như:
 Youtube
 Group Facebook
 Trên trang
1.4.3. Công nghệ
 Đọc tài liệu về cách thức, cơ chế hoạt động của hệ quản trị CSDL MySQL.
 Đọc tài liệu các framework và các thư viện như: Bootstrap, Jquery để viết giao
diện website và sử dụng thư viện Express để xây dựng backend.
1.5. PHẠM VI ỨNG DỤNG
 Đối tượng sử dụng: Tất cả mọi người có nhu cầu đặt lịch khám.
 Môi trường ứng dụng: Trên môi trường internet.
 Chức năng chính:
 Đăng nhập
 Đăng ký
 Thêm, sửa, xố, người dùng
 Đặt lịch khám bệnh
 Chức năng quản trị dành cho admin
 Thêm, sửa, xoá bác sĩ
 Thêm, sửa, xố chun khoa
 Thêm, sửa, xố phịng khám
 Thêm, sửa, xoá cẩm nang
 Chức năng thống kê
 Quản lý lịch khám bệnh của bệnh nhân

2


CHƯƠNG 2
CƠ SỞ LÝ THUYẾT

2.1. LÝ THUYẾT SỬ DỤNG
2.1.1. Mô hình MVC

MVC là từ viết tắt bởi 3 từ Model – View – Controller. Đây là mơ hình thiết kế
sử dụng trong kỹ thuật phần mềm. Mơ hình source code thành 3 phần, tương ứng mỗi
từ. Mỗi từ tương ứng với một hoạt động tách biệt trong một mơ hình.

Hình 2.1. Mơ hình MVC
 Model (M): Là bộ phận có chức năng lưu trữ toàn bộ dữ liệu của ứng dụng. Bộ
phận này là một cầu nối giữa 2 thành phần bên dưới là View và Controller. Model thể
hiện dưới hình thức là một cơ sở dữ liệu hoặc có khi chỉ đơn giản là một file XML bình
thường. Model thể hiện rõ các thao tác với cơ sở dữ liệu như cho phép xem, truy xuất,
xử lý dữ liệu,…
 View (V): Đây là phần giao diện (theme) dành cho người sử dụng. Nơi mà
người dùng có thể lấy được thông tin dữ liệu của MVC thông qua các thao tác truy vấn
như tìm kiếm hoặc sử dụng thơng qua các website.
Thông thường, các ứng dụng web sử dụng MVC View như một phần của hệ thống, nơi
các thành phần HTML được tạo ra. Bên cạnh đó, View cũng có chức năng ghi nhận hoạt
động của người dùng để tương tác với Controller. Tuy nhiên, View khơng có mối quan
hệ trực tiếp với Controller, cũng không được lấy dữ liệu từ Controller mà chỉ hiển thị
yêu cầu chuyển cho Controller mà thơi.
Ví dụ: Nút “delete” được tạo bởi View khi người dùng nhấn vào nút đó sẽ có một hành
động trong Controller.
 Controller (C):Bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến
thông qua view. Từ đó, C đưa ra dữ liệu phù hợp với người dùng. Bên cạnh đó,
Controller cịn có chức năng kết nối với model.
3


Hình 2.2. Luồng tương tác giữa các thành phần trong MVC.

Luồng tương tác của mơ hình:
Người dùng gửi resquest đến server thì hệ thống sẽ giao cho Controller xử lý
Controller sẽ lấy dữ liệu từ Model sau khi lấy xong dữ liệu thì Controller sẽ gửi dữ liệu
lên View, View sẽ trả kết quả từ về cho người dùng. Ví dụ: Chức năng thêm bài viết
mới trong trang quản trị website. Nơi đây có 2 trường nhập về tiêu đề và nội dung bài
viết, thì trong đó:
 View sẽ hiển thị ra phần nhập form tiêu đề và nội dung.
 Controller lấy dữ liệu từ 2 trường và gửi tới Model.
 Model lúc này sẽ nhận dữ liệu từ Controller để lưu trữ trong cơ sở dữ liệu.
 Mỗi bộ phận thực hiện chức năng nhất định, nhưng chúng có sự thống nhất, liên
kết với nhau tạo nên mơ hình MVC [10].
2.1.2 Mơ hình thương mại điện tử
a. Mơ hình B2B
Mơ hình kinh doanh B2B (từ viết tắt của cụm từ Business to Business) dùng để chỉ
hình thức kinh doanh, buôn bán giữa doanh nghiệp và doanh nghiệp, thông thường là
mơ hình kinh doanh thương mại điện tử và các giao dịch diễn ra chủ yếu trên các kênh
thương mại điện tử hoặc sàn giao dịch điện tử, một số giao dịch phức tạp hơn cũng có
thể diễn ra bên ngoài thực tế, từ lập hợp đồng, báo giá cho đến mua bán sản phẩm.

4


Hình 2.3. Mơ hình B2B trong thương mại điện tử
B2B là khái niệm tồn tại từ khá lâu trước đây và được khá nhiều doanh nghiệp ưa
chuộng bởi việc giao dịch và hợp tác giữa các doanh nghiệp với nhau thường mang lại
lợi ích đa dạng và hiệu quả nhanh hơn, các doanh nghiệp cũng nhanh chóng khẳng định
chỗ đứng trên thị trường thơng qua hình thức hợp tác và làm việc cùng nhau [6].
b. Mơ hình B2C
B2C là thuật ngữ mô tả giao dịch giữa các doanh nghiệp với người tiêu dùng. Đây
là quá trình bán sản phẩm và dịch vụ trực tiếp giữa những người tiêu dùng là người cuối

cùng mua sản phẩm và dịch vụ của doanh nghiệp. Hầu hết các doanh nghiệp bán trực
tiếp cho người tiêu dùng có thể được gọi là các doanh nghiệp B2C.

Hình 2.4. Mơ hình B2C trong thương mại điện tử
5


B2C trở nên vô cùng phổ biến trong thời gian bong bóng dot-com cuối thập niên
90 khi nó chủ yếu được dùng để chỉ các nhà bán lẻ trực tuyến bán sản phẩm và dịch vụ
cho người tiêu dùng thông qua mạng Internet. Là một mơ hình kinh doanh, B2C có sự
khác biệt đáng kể so với mơ hình B2B, trong đó chỉ sự giao dịch giữa hai hoặc nhiều
doanh nghiệp với nhau.
B2C là một trong những mơ hình bán hàng phổ biến nhất và được biết đến rộng
rãi trên thế giới.
B2C theo truyền thống được gọi là mua sắm tại các trung tâm thương mại, ăn uống
tại nhà hàng, trả tiền cho việc xem phim. Tuy nhiên, sự trỗi dậy của Internet đã tạo ra
một kênh kinh doanh B2C hồn tồn mới dưới hình thức thương mại điện tử hoặc bán
hàng hóa và dịch vụ qua Internet.
Bất kì doanh nghiệp nào phụ thuộc vào doanh số B2C đều phải duy trì mối quan
hệ tốt với khách hàng của họ để đảm bảo họ sẽ quay lại. Không giống như B2B có các
chiến dịch tiếp thị hướng đến việc chứng minh giá trị của sản phẩm hoặc dịch vụ, các
công ty dựa vào B2C phải đưa ra những hoạt động tiếp thị hướng đến cảm xúc của khách
hàng [5].
2.2. CÔNG NGHỆ SỬ DỤNG
2.2.1. Frontend
a. HTML
HTML là chữ viết tắt của Hypertext Markup Language. Nó giúp người dùng tạo
và cấu trúc các thành phần trong trang web hoặc ứng dụng, phân chia các đoạn văn,
heading, links, blockquotes.
HTML không phải là ngôn ngữ lập trình, đồng nghĩa với việc nó khơng thể tạo ra

các chức năng “động” được. Nó chỉ giống như Microsoft Word, dùng để bố cục và định
dạng trang web [4].

Hình 2.5. Ngơn ngữ lập trình HTML
6


b. CSS
CSS là ngôn ngữ tạo phong cách cho trang web – Cascading Style Sheet language.
Nó dùng để tạo phong cách và định kiểu cho những yếu tố được viết dưới dạng ngơn
ngữ đánh dấu, như là HTML. Nó có thể điều khiển định dạng của nhiều trang web cùng
lúc để tiết kiệm cơng sức cho người viết web. Nó phân biệt cách hiển thị của trang web
với nội dung chính của trang bằng cách điều khiển bố cục, màu sắc.
CSS được phát triển bởi W3C (World Wide Web Consortium) vào năm 1996, vì
một lý do đơn giản. HTML khơng được thiết kế để gắn tag để giúp định dạng trang web.
chỉ có thể dùng nó để “đánh dấu” lên site.
Những tag như <font> được ra mắt trong HTML phiên bản 3.2, nó gây rất nhiều
rắc rối cho lập trình viên. Vì website có nhiều font khác nhau, màu nền và phong cách
khác nhau. Để viết lại code cho trang web là cả một quá trình dài, cực nhọc. Vì vậy,
CSS được tạo bởi W3C là để giải quyết vấn đề này.
Mối tương quan giữa HTML và CSS rất mật thiết. HTML là ngôn ngữ markup
(nền tảng của site) và CSS định hình phong cách (tất cả những gì tạo nên giao diện
website), chúng là không thể tách rời.
CSS về lý thuyết khơng có cũng được, nhưng khi đó website sẽ không chỉ là một
trang chứa văn bản mà không có gì khác [8].

Hình 2.6. Ngơn ngữ CSS
c. JavaScript
JavaScript là một ngơn ngữ lập trình đa nền tảng (cross-platform), ngơn ngữ lập
trình kịch bản, hướng đối tượng. JavaScript là một ngôn ngữ nhỏ và nhẹ (small and

lightweight). Khi nằm bên trong một mơi trường (host environment), JavaScript có thể
kết nối tới các object của mơi trường đó và cung cấp các cách quản lý chúng (object).
JavaScript chứa các thư viện tiêu chuẩn cho các object, ví dụ như: Array, Date,
và Math, và các yếu tố cốt lõi của ngôn ngữ lập trình như: tốn tử (operators), cấu trúc
7


điều khiển (control structures), và câu lệnh. JavaScript có thể được mở rộng cho nhiều
mục đích bằng việc bổ sung thêm các object.
JavaScript là một ngơn ngữ lập trình được sử dụng để tạo ra những trang web
tương tác. Nó được tích hợp và nhúng trong HTML. JavaScript cho phép kiểm soát các
hành vi của trang web tốt hơn so với khi chỉ có một mình HTML. JavaScript kết hợp
vào HTML, chạy trên Windows, Macintosh và các hệ thống hỗ trợ Netscape khác.
JavaScript có rất nhiều ưu điểm khiến nó vượt trội hơn so với các đối thủ, đặc
biệt trong các trường hợp thực tế. Nó khơng cần một compiler vì web browser có thể
biên dịch nó bằng HTML, dễ học hơn các ngơn ngữ lập trình khác, lỗi dễ phát hiện hơn
và vì vậy dễ sửa hơn. Nó có thể được gắn trên một số element của trang web hoặc event
của trang web như là thông qua click chuột hoặc di chuột tới, hoạt động trên nhiều trình
duyệt, nền tảng. Nó giúp kiểm tra input và giảm thiểu việc kiểm tra thủ công khi truy
xuất qua database, giúp website tương tác tốt hơn với khách truy cập, nhanh hơn và nhẹ
hơn các ngơn ngữ lập trình khác [2].

Hình 2.7. Ngơn ngữ lập trình JavaScript
d. Bootstrap
Bootstrap đã quen thuộc với lập trình viên Frontend, chức năng của frameworks
này là gì. Nó tập hợp các cú pháp dành riêng cho nhiệm nào đó trong một bộ sưu tập để
giúp các web developer xây dựng website nhanh hơn nhiều, vì họ khơng cần phải lo về
các lệnh và chức năng cơ bản.
Mặc dù vậy, vẫn thiếu sự thống nhất do việc các thư viện được sử dụng quá nhiều,
cần phải thay đổi liên tục. Bootstrap là câu trả lời cho vấn đề này. Front-end framework

là mã nguồn mở, ban đầu được xây dựng bởi Mark Otto và Jacob Thornton để lập trình
web front-end nhanh hơn và dễ dàng hơn.
Nó chứa tất cả các mẫu thiết kế dựa trên HTML và CSS với nhiều chức năng và
thành phần khác nhau, như điều hướng, hệ thống lưới, băng chuyền hình ảnh.
8


Mặc dù Bootstrap giúp tiết kiệm thời gian của nhà phát triển khỏi việc phải quản
lý các template nhiều lần, nhưng mục tiêu chính của nó là tạo ra các responsive website.
Nó cho phép giao diện người dùng của trang web có thể hoạt động tối ưu trên mọi kích
thước màn hình, trên điện thoại màn hình nhỏ hoặc máy tính để bàn màn hình lớn.
Do đó, các nhà phát triển không cần xây dựng các trang web dành riêng cho từng
thiết bị và bị giới hạn phạm vi đối tượng nữa. Do sự phổ biến của nó, ngày càng nhiều
cộng đồng Bootstrap xuất hiện. Đó là một nơi tuyệt vời để các nhà phát triển và nhà thiết
kế trao đổi kiến thức và thảo luận về các bản vá framework mới nhất [1].

Hình 2.8. Thư viện Bootstrap
2.2.2 Backend
a. Node JS
NodeJS là một nền tảng (Platform) phát triển độc lập được xây dựng ở trên
Javascript Runtime của Chrome mà chúng ta có thể xây dựng được các ứng dụng mạng
một cách nhanh chóng và dễ dàng mở rộng.
Nodejs được xây dựng và phát triển từ năm 2009, bảo trợ bởi công ty Joyent, trụ
sở tại California, Hoa Kỳ.
Phần Core bên dưới của Nodejs được viết hầu hết bằng C++ nên cho tốc độ xử lý
và hiệu năng khá cao.
NodeJS tạo ra được các ứng dụng có tốc độ xử lý nhanh, realtime thời gian thực.
NodeJS áp dụng cho các sản phẩm có lượng truy cập lớn, cần mở rộng nhanh, cần
đổi mới công nghệ, hoặc tạo ra các dự án Startup nhanh nhất có thể.
Những ứng dụng có thể và nên viết bằng NodeJS:

 Websocket server: Các máy chủ web socket như là Online Chat, Game Server…
 Fast File Upload Client: là các chương trình upload file tốc độ cao.
 Ad Server: Các máy chủ quảng cáo.
 Cloud Services: Các dịch vụ đám mây.
9


RESTful API: đây là những ứng dụng mà được sử dụng cho các ứng dụng khác
thông qua API.
 Any Real-time Data Application: bất kỳ một ứng dụng nào có yêu cầu về tốc độ
thời gian thực. Micro Services: Ý tưởng của micro services là chia nhỏ một ứng dụng lớn
thành các dịch vụ nhỏ và kết nối chúng lại với nhau. Nodejs có thể làm tốt điều này [13].


Hình 2.9. Ngơn ngữ lập trình NodeJS
b. Express
Express JS hay cịn được viết là Express JS. Đây là một framework mã nguồn mở
miễn phí cho NodeJS. Express JS được sử dụng trong thiết kế và xây dựng các ứng dụng
web một cách đơn giản và nhanh chóng.
Vì Express JS chỉ u cầu ngơn ngữ lập trình Javascript nên việc xây dựng các ứng
dụng web và API trở nên đơn giản hơn với các lập trình viên và nhà phát triển. Express
JS cũng là một khn khổ của NodeJS do đó hầu hết các mã code đã được viết sẵn cho
các lập trình viên có thể làm việc.
Nhờ có Express JS mà các nhà lập trình có thể dễ dàng tạo các ứng dụng 1 web,
nhiều web hoặc kết hợp. Do có dung lượng khá nhẹ, Express JS giúp cho việc tổ chức
các ứng dụng web thành một kiến trúc MVC có tổ chức hơn.Để có thể sử dụng được mã
nguồn này, chúng ta cần phải biết về Javascript và HTML.
Express JS cũng là một phần của công nghệ giúp quản lý các ứng dụng web một
cách dễ dàng hơn hay còn được gọi là ngăn xếp phần mềm MEAN. Nhờ có thư viện
Javascript của Express JS đã giúp cho các nhà lập trình xây dựng nên các ứng dụng web

hiệu quả và nhanh chóng hơn. Express JS cũng được sử dụng để nâng cao các chức năng
của NodeJS.
Trên thực tế, nếu không sử dụng Express JS, người lập trình viên sẽ phải thực hiện
rất nhiều bước lập trình phức tạp để xây dựng nên một API hiệu quả. Express JS đã giúp
cho việc lập trình trở nên dễ dàng hơn và có nhiều tính năng mới bổ sung [12].
10


Hình 2.10. Express framework
c. 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 được sử dụng cho việc bổ trợ NodeJs, 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 [3].

Hình 2.11. Hệ quản trị cơ sở dữ liệu MySQL

11


2.3. CÔNG CỤ SỬ DỤNG
2.3.1. Visual code


Visual Studio Code là một chương trình phần mềm để thiết kế web, về cơ bản là
một trình soạn thảo lập hỗ trợ hầu hết các ngôn ngữ như C#, JAVASCRIPT, CSS,
HTML, PHP, đặc biệt Visual Studio Code hỗ trợ rất mạnh mẽ về lập trình web vì phần
mềm hỗ trợ rất nhiều framework như BOOTSTRAP cũng là một trong những framework
rất mạnh của CSS. Chương trình cung cấp giao diện WYSIWYG để tạo và chỉnh sửa
các trang web [7].

Hình 2.12. Phần mềm Visual Studio Code
2.3.2. Postman

Postman là 1 ứng dụng REST Client, dùng để thực hiện test, gửi các request, API
mà không cần sử dụng browser.
Postman cũng có thể dùng để test các request tới server giống như apache
JMeter để xem kết quả trả về từ server mà không cần sử dụng browser hoặc app [9].

Hình 2.13. Phần mềm Postman
12


2.3.3 XAMPP

Là một chương trình tạo máy chủ web (Web Server) được tích hợp sẵn Apache,
PHP, MySQL, FTP Server, Mail Server và các cơng cụ như phpMyAdmin. Với chương
trình quản lý tiện dụng, cho phép người dùng chủ động bật tắt hoặc khởi động lại dịch
vụ máy chủ bất cứ lúc nào.
Cung cấp cho các nhà phát triển ứng dụng web trực tuyến, những người lập trình
một cách thức dễ dàng, thoải mái để kiểm tra các trang web động mà khơng cần truy cập
vào Internet. Nó cũng bao gồm các phiên bản mới nhất của Mercury và Tomcat [11].


Hình 2.14. Công cụ XAMPP

13


CHƯƠNG 3
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1. ĐỐI TƯỢNG VÀ CHỨC NĂNG CỦA HỆ THỐNG
3.1.1. Chức năng của khách hàng
Bảng 3.1. Chức năng của khách hàng
Chức năng
Chức năng con
Tìm kiếm bác sĩ
Đặt lịch khám bệnh
Xem cẩm nang
Xem thông tin bác sĩ
Xem lịch trình bác sĩ
Xem thơng tin chun khoa
Xem thơng tin phịng khám
3.1.2 Chức năng của bác sĩ
Bảng 3.2. Chức năng của bác sĩ
Chức năng
Chức năng con
Đăng nhập
Đăng xuất
Thêm lịch trình khám
Xem lịch trình khám
3.1.3 Chức năng của Admin
Bảng 3.3. Chức năng của Admin
Chức năng

Chức năng con
Đăng nhập
Đăng xuất
Xem danh sách tài khoản
Xem thông tin tài khoản
Quản lý tài khoản

Thêm tài khoản
Cập nhật tài khoản
Xoá tài khoản
Xem danh sách chuyên khoa
Xem thông tin chuyên khoa

Quản lý chuyên khoa

Thêm chuyên khoa

Quản lý phịng khám

Cập nhật chun khoa
Xố chun khoa
Xem danh sách phịng khám
Xem thơng tin phịng khám
Thêm phịng khám
14


Cập nhật phịng khám
Xố phịng khám
Xem danh sách cẩm nang

Quản lý cẩm nang

Xem thông tin cẩm nang
Thêm cẩm nang
Cập nhật cẩm nang

Quản lý lịch trình làm việc

Xố cẩm nang
Tìm kiếm lịch trình làm việc
Thêm lịch trình làm việc

Xác thực bệnh nhân
3.2. PHÂN TÍCH U CẦU CHỨC NĂNG
3.2.1. Khách hàng
a. Tìm kiếm thơng tin
Bảng 3.4. Phân tích chức năng tìm kiếm thông tin
Đầu vào
Tên bác sĩ, tên chuyên khoa hoặc tên phịng khám
Kiểm tra thơng tin có trong CSDL khơng nếu thơng tin trùng với
Xử lý
CSDL thì hệ thống thơng báo đã tìm thấy cịn khơng trùng với CSDL
thì thơng báo khơng tìm thấy dữ liệu
Đầu ra
Hiển thị ra danh sách tìm kiếm trùng với từ khố đã nhập.
b. Xem thơng tin bác sĩ
Bảng 3.5. Phân tích chức năng xem thơng tin bác sĩ
Đầu vào
ID bác sĩ
Bước 1: Người dùng truy cập vào trang xem thông tin bác sĩ

Xử lý
Bước 2: Server kiểm tra quyền truy cập
Bước 3: Server trả về thông tin bác sĩ
Đầu ra
Hiển thị ra thông tin của bác sĩ
c. Xem thơng tin chun khoa
Bảng 3.6. Phân tích chức năng xem tin chuyên khoa
Đầu vào
ID chuyên khoa
Bước 1: Người dùng truy cập vào trang xem chuyên khoa
Xử lý
Bước 2: Server kiểm tra quyền truy cập
Bước 3: Server trả về thông chuyên khoa
Đầu ra
Hiển thị ra thông tin chuyên khoa
d. Xem thơng tin phịng khám
Bảng 3.7. Phân tích chức năng xem thơng tin phịng khám
Đầu vào
ID phịng khám
Bước 1: Người dùng truy cập vào trang xem phòng khám
Xử lý
Bước 2: Server kiểm tra quyền truy cập
Bước 3: Server trả về thơng phịng khám
15


×