Tải bản đầy đủ (.docx) (73 trang)

Xây dựng ứng dụng di động hỗ trợ y tế theo yêu cầu

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.37 MB, 73 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

ĐỒ ÁN 1

XÂY DỰNG ỨNG DỤNG DI ĐỘNG HỖ TRỢ Y TẾ
THEO YÊU CẦU

GIẢNG VIÊN HƯỚNG DẪN: TS. Đỗ Thị Thanh Tuyền

SINH VIÊN THỰC HIỆN:
Đỗ Phạm Huy Khánh – 20521442
Nguyễn Văn Pháp - 20521731

TP. HỒ CHÍ MINH, tháng 6 năm 2023


LỜI CẢM ƠN
Sự phát triển như vũ bão của công nghệ thông tin (CNTT) đã tác động mạnh
mẽ và to lớn đến mọi mặt đời sống kinh tế xã hội. Ngày nay, CNTT đã trở thành
một trong những động lực quan trọng nhất của sự phát triển. Với khả năng số hóa
mọi loại thơng tin, máy tính trở thành phương tiện xử lý thông tin thống nhất và đa
năng, thực hiện được nhiều chức năng khác nhau trên mọi dạng thông tin thuộc mọi
lĩnh vực như: nghiên cứu, quản lý, kinh doanh, giáo dục, ...
Những ứng dụng của CNTT trong lĩnh vực y tế là những ứng dụng vô cùng
quan trọng. Ứng dụng di động đã tạo ra những đột phá trong việc theo dõi sức khỏe
cá nhân, quản lý bệnh tật, phân tích dữ liệu y tế lớn và cung cấp dịch vụ y tế từ xa.
Nhờ đó, mọi người có thể tiếp cận dịch vụ y tế tốt hơn, tiết kiệm thời gian và tăng
cường khả năng chủ động trong việc quản lý sức khỏe cá nhân của mình.


Là sinh viên CNTT, trong đồ án mơn Đồ án 1 này, nhóm chúng em đã chọn
và thực hiện đồ án “XÂY DỰNG ỨNG DỤNG DI ĐỘNG HỖ TRỢ Y TẾ THEO
YÊU CẦU”.
Nhóm xin gửi lời cảm ơn chân thành đến cơ Đỗ Thị Thanh Tuyền đã tận tình
giảng dạy, hướng dẫn chúng em trong suốt thời gian học vừa qua và các bạn học đã
góp ý và giúp đỡ nhóm trong q trình thực hiện đồ án này.
Do kiến thức và thời gian thực hiện hạn chế, đồ án của nhóm vẫn cịn nhiều
thiếu sót. Nhóm rất mong nhận được góp ý của cơ và các bạn để đồ án của nhóm
được hồn thiện.

Nhóm sinh viên thực hiện
ĐỖ PHẠM HUY KHÁNH - NGUYỄN VĂN PHÁP

2


MỤC LỤC
LỜI CẢM ƠN...........................................................................................................2
MỤC LỤC.................................................................................................................3
DANH MỤC HÌNH ẢNH.........................................................................................7
DANH MỤC BẢNG.................................................................................................9
TĨM TẮT ĐỒ ÁN..................................................................................................11
Chương 1.

MỞ ĐẦU......................................................................................13

1.1.

Lí do chọn đề tài..................................................................................13


1.2.

Mục đích..............................................................................................13

1.3.

Phạm vi nghiên cứu.............................................................................13

1.4.

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

1.4.1.

Bệnh nhân:....................................................................................14

1.4.2.

Bác sĩ:...........................................................................................14

1.5.

Phương pháp thực hiện........................................................................15

1.6.

Cơng nghệ sử dụng..............................................................................15

1.7.


Q trình thực hiện..............................................................................16

Chương 2.
2.1.

CƠ SỞ LÝ THUYẾT...................................................................17

Firebase...............................................................................................17

2.1.1.

Giới thiệu [3.1].............................................................................17

2.1.2.

Cách hoạt động [3.2].....................................................................17

2.1.3.

Ưu điểm [3.2]...............................................................................18

2.1.4.

Nhược điểm [3.1]..........................................................................18

2.2.

Dart......................................................................................................18

2.3.


Flutter..................................................................................................19

3


2.3.1.

Giới thiệu [1.2].............................................................................19

2.3.2.

Tính năng [1.2].............................................................................20

2.3.3.

Lí do sử dụng [1.2].......................................................................20

2.4.

Bloc.....................................................................................................21

2.4.1.

Giới thiệu......................................................................................21

2.4.2.

Khi sử dụng Cubit.........................................................................21


2.4.3.

Khi không sử dụng Cubit..............................................................22

Chương 3.

THIẾT KẾ KIẾN TRÚC HỆ THỐNG.........................................25

3.1.

Kiến trúc hệ thống...............................................................................25

3.2.

Các chức năng chính...........................................................................26

3.3.

Phân tích yêu cầu.................................................................................27

3.4.

Sơ đồ Usecase.....................................................................................28

3.5.

Mô tả usecase......................................................................................28

3.6.


Đặc tả Use case....................................................................................30

3.6.1.

Use-case "Đăng nhập"..................................................................30

3.6.2.

Use-case “Đăng kí”.......................................................................31

3.6.3.

Use-case “Quên mật khẩu”...........................................................31

3.6.4.

Use-case “Theo dõi cộng đồng”....................................................32

3.6.5.

Use-case “Quản lý hồ sơ sức khỏe”..............................................32

3.6.6.

Use-case “Thực hiện cuộc gọi”.....................................................33

3.6.7.

Use-case “Xem danh sách bác sĩ theo triệu chứng”......................34


3.6.8.

Use-case “Quản lý thông tin cá nhân”..........................................34

3.6.9.

Use-case “Quản lý cuộc hẹn”........................................................35

3.6.10.

Use-case “Quản lý hồ sơ của các bệnh nhân đã khám”.................35

4


3.6.11.

Use-case “Nhận thơng báo cuộc hẹn”...........................................36

3.7.

Sơ đồ lớp.............................................................................................37

3.8.

Giải thích các lớp.................................................................................37

3.8.1.

Bảng Person..................................................................................37


3.8.2.

Bảng Patient..................................................................................38

3.8.3.

Bảng Doctor..................................................................................38

3.8.4.

Bảng Review.................................................................................38

3.8.5.

Bảng Appointment........................................................................39

3.8.6.

Bảng HealthRecord.......................................................................40

3.8.7.

Bảng Post......................................................................................40

3.8.8.

Bảng Chat.....................................................................................41

Chương 4.


THIẾT KẾ VÀ XÂY DỰNG GIAO DIỆN..................................43

4.1.

Tổng quan về giao diện.......................................................................43

4.2.

Chi tiết các màn hình...........................................................................45

4.2.1.

Màn hình đăng nhập.....................................................................45

4.2.2.

Màn hình đăng ký bệnh nhân........................................................46

4.2.3.

Màn hình đăng ký bác sĩ...............................................................47

4.2.4.

Màn hình lấy lại mật khẩu............................................................48

4.2.5.

Màn hình trang chủ của bệnh nhân...............................................49


4.2.6.

Màn hình đặt cuộc hẹn..................................................................50

4.2.7.

Màn hình thơng tin chi tiết của bác sĩ...........................................51

4.2.8.

Màn hình quản lý cuộc hẹn của bệnh nhân...................................52

4.2.9.

Màn hình chi tiết cuộc hẹn của bệnh nhân....................................53

4.2.10.

Màn hình thanh tốn.....................................................................54

5


4.2.11.

Màn hình quản lý hồ sơ sức khỏe của bệnh nhân..........................55

4.2.12.


Màn hình quản lý thơng tin cá nhân của bệnh nhân......................56

4.2.13.

Màn hình hỏi đáp..........................................................................57

4.2.14.

Màn hình đăng câu hỏi..................................................................58

4.2.15.

Màn hình chỉnh sửa thơng tin bác sĩ.............................................59

4.2.16.

Màn hình chỉnh sửa giờ cho bác sĩ................................................60

4.2.17.

Màn hình thơng tin bác sĩ (phía bác sĩ).........................................61

4.2.18.

Màn hình trang chủ bác sĩ.............................................................62

4.2.19.

Màn hình quản lý thơng tin của bác sĩ..........................................63


4.2.20.

Màn hình chỉ tiết cuộc hẹn của bác sĩ...........................................64

4.2.21.

Màn hình quản lý hồ sơ sức khỏe của bác sĩ.................................65

4.2.22.

Màn hình chi tiết hồ sơ phía bác sĩ................................................66

4.2.23.

Màn hình chẩn đốn......................................................................68

4.2.24.

Màn hình gọi.................................................................................69

Chương 5.
5.1.

KẾT LUẬN..................................................................................70

Đánh giá..............................................................................................70

5.1.1.

Ưu điểm:.......................................................................................70


5.1.2.

Nhược điểm:.................................................................................70

5.1.3.

Kết quả đạt được:..........................................................................71

5.2.

Hướng phát triển..................................................................................71

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

6


DANH MỤC HÌNH ẢNH
Hình 2.1 Firebase....................................................................................................17
Hình 2.2 Dart [4.2]..................................................................................................19
Hình 2.3 Flutter.......................................................................................................20
Hình 2.4 Cubit.........................................................................................................21
Hình 2.5 Luồng hoạt động khi dùng Cubit..............................................................22
Hình 2.6 Bloc..........................................................................................................22
Hình 2.7 Luồng hoạt động của Bloc........................................................................23
Hình 3.1 Kiến trúc hệ thống client server [3.1].......................................................25
Hình 3.2 Tổng quan về chức năng...........................................................................26
Hình 3.3: Sơ đồ Usecase..........................................................................................28
Hình 3.4: Sơ đồ lớp.................................................................................................37

Hình 4.1: Thiết kế màn hình cho bệnh nhân............................................................43
Hình 4.2: Thiết kế màn hình cho bác sĩ...................................................................44
Hình 4.3: Thiết kế màn hình truy cập vào ứng dụng................................................44
Hình 4.4 Màn hình đăng nhập.................................................................................45
Hình 4.5 Màn hình đăng ký bệnh nhân....................................................................46
Hình 4.6 Màn hình đăng ký bác sĩ...........................................................................47
Hình 4.7 Màn hình lấy lại mật khẩu........................................................................48
Hình 4.8 Màn hình trang chủ của bệnh nhân...........................................................49
Hình 4.9 Màn hình đặt cuộc hẹn..............................................................................50
Hình 4.10 Màn hình thơng tin chi tiết của bác sĩ.....................................................51
Hình 4.11 Màn hình quản lý cuộc hẹn của bệnh nhân.............................................52
Hình 4.12 Màn hình quản lý cuộc hẹn của bệnh nhân.............................................53

7


Hình 4.13 Màn hình thanh tốn...............................................................................54
Hình 4.14 Màn hình quản lý hồ sơ sức khỏe của bệnh nhân....................................55
Hình 4.15 Màn hình quản lý thơng tin cá nhân của bệnh nhân................................56
Hình 4.16 Màn hình hỏi đáp....................................................................................57
Hình 4.17 Màn hình đăng câu hỏi...........................................................................58
Hình 4.18 Màn hình chỉnh sửa thơng tin bác sĩ.......................................................59
Hình 4.19 Màn hình chỉnh sửa giờ của bác sĩ..........................................................60
Hình 4.20 Màn hình thơng tin bác sĩ (phía bác sĩ)...................................................61
Hình 4.21 Màn hình trang chủ bác sĩ.......................................................................62
Hình 4.22 Màn hình quản lý cuộc hẹn của bác sĩ....................................................63
Hình 4.23 Màn hình chi tiết cuộc hẹn của bác sĩ.....................................................64
Hình 4.24 Màn hình quản lý hồ sơ sức khỏe của bác sĩ...........................................65
Hình 4.25 Màn hình chi tiết hồ sơ phía bác sĩ.........................................................66
Hình 4.26 Màn hình chẩn đốn................................................................................68

Hình 4.27 Màn hình gọi...........................................................................................69

8


DANH MỤC BẢNG
Bảng 3.1 Danh sách actor........................................................................................28
Bảng 3.2 Mô tả Use case.........................................................................................28
Bảng 3.3: Mô tả Usecase Đăng nhập.......................................................................30
Bảng 3.4: Mô tả Usecase Đăng kí............................................................................31
Bảng 3.5: Mơ tả Usecase Qn mật khẩu................................................................31
Bảng 3.6: Mô tả Usecase Theo dõi cộng đồng........................................................32
Bảng 3.7: Mô tả Usecase Quản lý hồ sơ sức khỏe...................................................32
Bảng 3.8: Mô tả Usecase Thực hiện cuộc gọi..........................................................33
Bảng 3.9: Mô tả Usecase Xem danh sách bác sĩ theo triệu chứng...........................34
Bảng 3.10: Mô tả Usecase Quản lý thông tin cá nhân.............................................34
Bảng 3.11: Mô tả Usecase Quản lý cuộc hẹn..........................................................35
Bảng 3.12: Mô tả Usecase Quản lý cuộc hẹn..........................................................35
Bảng 3.13: Mô tả Usecase Quản lý cuộc hẹn..........................................................36
Bảng 3.14 Bảng Person...........................................................................................37
Bảng 3.15 Bảng Patient...........................................................................................38
Bảng 3.16 Bảng Doctor...........................................................................................38
Bảng 3.17 Bảng Review..........................................................................................38
Bảng 3.18 Bảng Appointment.................................................................................39
Bảng 3.19 Bảng HealthRecord................................................................................40
Bảng 3.20 Bảng Post...............................................................................................40
Bảng 3.21 Bảng Chat...............................................................................................41
Bảng 4.1 Thành phần màn hình đăng nhập..............................................................45
Bảng 4.2 Thành phần màn hình đăng ký bệnh nhân................................................46


9


Bảng 4.3 Thành phần màn hình đăng ký bác sĩ.......................................................47
Bảng 4.4 Thành phần màn hình lấy lại mật khẩu.....................................................48
Bảng 4.5 Thành phần màn hình trang chủ của bệnh nhân.......................................49
Bảng 4.6 Thành phần màn hình đặt cuộc hẹn..........................................................50
Bảng 4.7 Thành phần màn hình thơng tin chi tiết của bác sĩ...................................51
Bảng 4.8 Thành phần màn hình quản lý cuộc hẹn của bệnh nhân...........................52
Bảng 4.9 Thành phần màn hình quản lý cuộc hẹn của bệnh nhân...........................53
Bảng 4.10 Thành phần màn hình thanh tốn...........................................................54
Bảng 4.11 Thành phần màn hình quản lý hồ sơ sức khỏe của bệnh nhân................55
Bảng 4.12 Thành phần màn hình quản lý thông tin cá nhân của bệnh nhân............56
Bảng 4.13 Thành phần màn hình hỏi đáp................................................................57
Bảng 4.14 Thành phần màn hình đăng câu hỏi........................................................58
Bảng 4.15 Thành phần màn hình chỉnh sửa thơng tin bác sĩ....................................59
Bảng 4.16 Thành phần màn hình chỉnh sửa giờ của bác sĩ......................................60
Bảng 4.17 Thành phần màn hình thơng tin bác sĩ (phía bác sĩ)...............................61
Bảng 4.18 Thành phần màn hình trang chủ bác sĩ...................................................62
Bảng 4.19 Thành phần màn hình quản lý cuộc hẹn của bác sĩ.................................63
Bảng 4.20 Thành phần màn hình chi tiết cuộc hẹn của bác sĩ..................................64
Bảng 4.21 Thành phần màn hình quản lý hồ sơ sức khỏe của bác sĩ.......................65
Bảng 4.22 Thành phần màn hình chi tiết hồ sơ phía bác sĩ......................................66
Bảng 4.23 Thành phần màn hình chẩn đốn............................................................68
Bảng 4.24 Thành phần màn hình gọi.......................................................................69

10


TÓM TẮT ĐỒ ÁN

Đồ án này tập trung vào việc phát triển một ứng dụng di động tư vấn y tế
nhằm tạo sự tương tác giữa bác sĩ và bệnh nhân. Ứng dụng này có hai chức năng
chính, tạo cơ hội cho bệnh nhân tìm kiếm và đặt cuộc hẹn với bác sĩ dựa trên triệu
chứng của họ, cùng với khả năng thực hiện cuộc hẹn qua video call. Ngoài ra, ứng
dụng cũng cung cấp một nền tảng như mạng xã hội chuyên về hỏi đáp cho sức khỏe,
nơi bệnh nhân có thể đăng bài viết về tình trạng sức khỏe của mình và nhận được
câu trả lời từ các bác sĩ.
Trước tiên, bệnh nhân có thể tìm kiếm bác sĩ dựa trên triệu chứng của mình
thơng qua ứng dụng. Họ có thể tìm kiếm theo các tiêu chí như chun mơn, kinh
nghiệm hoặc tên bác sĩ. Khi tìm thấy bác sĩ phù hợp, bệnh nhân có thể xem thơng
tin cá nhân và hồ sơ chuyên môn của bác sĩ để đảm bảo sự phù hợp.
Sau đó, bệnh nhân có thể đặt cuộc hẹn với bác sĩ thông qua ứng dụng. Việc
đặt cuộc hẹn sẽ bao gồm chọn ngày, giờ của cuộc hẹn. Khi đến ngày hẹn, bệnh nhân
và bác sĩ sẽ thực hiện cuộc hẹn qua video call. Điều này giúp tiết kiệm thời gian và
khả năng tiếp cận với bác sĩ từ xa. Ứng dụng cũng cung cấp chức năng quản lý lịch
sử cuộc hẹn, cho phép bệnh nhân và bác sĩ theo dõi và xem lại thông tin về các cuộc
hẹn trước đó (ví dụ như chuẩn đốn và lời dặn của bác sĩ).
Ngồi ra, ứng dụng cũng cung cấp một nền tảng như mạng xã hội chuyên về
hỏi đáp cho sức khỏe. Bệnh nhân có thể đăng bài viết về tình trạng sức khỏe của
mình và nhận được câu trả lời từ các bác sĩ. Điều này tạo ra một cộng đồng hỗ trợ
nơi bệnh nhân có thể chia sẻ thơng tin và kinh nghiệm với nhau.
Qua việc triển khai ứng dụng di động tư vấn y tế này, đã mang lại nhiều lợi
ích cho cả bác sĩ và bệnh nhân. Bệnh nhân có thể dễ dàng tìm kiếm và đặt cuộc hẹn
với bác sĩ, tiết kiệm thời gian và công sức. Nền tảng hỏi đáp cung cấp một kênh
tương tác linh hoạt giữa bệnh nhân và các chuyên gia y tế, giúp cung cấp thông tin
và lời khuyên y tế cho bệnh nhân trong thời gian nhanh nhất.
Tóm lại, ứng dụng di động tư vấn y tế này cung cấp một giải pháp tiện lợi và
hiệu quả cho bệnh nhân và bác sĩ trong việc tương tác và tư vấn y tế từ xa.

11



Báo cáo này bao gồm 74 trang và chia thành 5 chương chính:
Chương 1, nhóm trình bày mở đầu với việc giới thiệu lí do chọn đề tài, mục đích
nghiên cứu, phạm vi nghiên cứu, đối tượng sử dụng (bao gồm bệnh nhân và bác sĩ),
phương pháp thực hiện và cơng nghệ sử dụng. Q trình thực hiện dự án cũng được
đề cập.
Chương 2 tập trung vào cơ sở lý thuyết với các nội dung chính về Firebase,
Dart, Flutter và Bloc – các công nghệ được sử dụng trong dự án.
Chương 3, đề cập đến thiết kế kiến trúc hệ thống, các chức năng chính của hệ
thống, phân tích yêu cầu, sơ đồ Usecase và mô tả usecase. Các lớp trong hệ thống
cũng được giới thiệu và giải thích.
Chương 4 tập trung vào thiết kế và xây dựng giao diện của ứng dụng, cung cấp
tổng quan về giao diện và giới thiệu chi tiết các màn hình được xây dựng.
Chương 5 tóm tắt kết luận dựa trên việc đánh giá hiệu quả của dự án. Ưu điểm
và nhược điểm của hệ thống được đánh giá, cùng với kết quả đạt được. Cuối cùng,
nhóm cũng đề xuất hướng phát triển cho dự án trong tương lai.

12


Chương 1. MỞ ĐẦU
1.1.
-

Lí do chọn đề tài
Y tế đóng vai trò rất quan trọng đối với nhiều lĩnh vực trong cuộc sống,
trong đó đặc biệt là sức khỏe con người. Bên cạnh đó, trong những năm
gần đây, việc ngành y tế đối mặt với một nhu cầu lớn trong việc sử dụng
các ứng dụng y tế. Với sự phát triển của các ứng dụng ý tế, người dùng bây

giờ có thể tận dụng các dịch vụ y tế một cách thoải mái tại nhà của họ và
thảo luận về bệnh tật và các vấn đề y tế của họ để nhận được sự hỗ trợ
ngay lập tức.

-

Một ứng dụng di động hỗ trợ cho tư vấn và khám chữa bệnh có thể góp
phần lớn cho cải thiện sức khỏe trong nhiều cách. Đầu tiên, nó có thể cung
cấp một nền tảng trung tâm cho người dùng truy cập, chọn và đặt lích hẹn
đối với bác sĩ phù hợp với tình hình của họ. Thứ hai là họ có thể theo dõi
được tình hình thuốc uống bởi ứng dụng. Điều này có thể giúp tối ưu hố
tiết kiệm thời gian cho bệnh nhân và bác sĩ. Tổng thể, một ứng dụng di
động hỗ trợ y tế theo yêu cầu có thể giúp cải thiện lĩnh vực y tế, đồng thời
sẽ là ứng dụng cực kì tiện lợi trong bối cảnh cách ly, điển hình là đại dịch
Covid-19.

1.2.
-

Mục đích
Cung cấp cho người dùng (bệnh nhân) một nền tảng để có thể được hỗ trợ
mặt y tế đúng lúc.

-

Giúp người dùng (Bệnh nhân) có thể quản lý sức khỏe của mình.

-

Cung cấp một mạng xã hội cho người dùng (Bác sĩ và bệnh nhân) để họ có

thể cải thiện sức khỏe cộng đồng.

1.3.
-

Cung cấp một trải nghiệm trực tuyến về mặt y học tốt hơn cho khách hàng.
Phạm vi nghiên cứu
Nền tảng hỗ trợ: Triển khai trên điện thoại (Hệ điều hành android)

13


-

Chức năng:
o Hệ thống gợi ý danh sách các bác sĩ cho khách hàng lựa chọn.
o Face call trực tuyến.
o Quản lý dữ liệu khách hàng (Bệnh nhân và bác sĩ): khách hàng có
thể tạo tài khoản để lưu thơng tin cá nhân.
o Tích hợp hệ thống thanh tốn.
o Quản lý hồ sơ sức khỏe của người dùng.
o Xây dựng một mạng xã hội để tư vấn sức khỏe.

1.4.

Đối tượng sử dụng

1.4.1. Bệnh nhân:
-


Bệnh nhân khi sử dụng ứng dụng sẽ có trải nghiệm thuận tiện và đáng tin
cậy trong việc quản lý sức khỏe cá nhân. Họ có thể dễ dàng đặt lịch hẹn
với các bác sĩ theo thời gian phù hợp với sự linh hoạt và tiện lợi. Không chỉ
giúp bệnh nhân lựa chọn bác sĩ phù hợp với nhu cầu và mong muốn, ứng
dụng cũng cung cấp thông tin chi tiết về từng bác sĩ, giúp họ hiểu rõ hơn về
chuyên môn và kinh nghiệm của bác sĩ.

-

Qua tính năng Face call, bệnh nhân có thể tư vấn hoặc khám chữa bệnh từ
xa, giúp tiết kiệm thời gian và giảm thiểu việc di chuyển không cần thiết.
Họ cũng có thể quản lý hồ sơ sức khỏe cá nhân, ghi chép lại các lời dặn, tư
vấn hoặc đơn thuốc mà bác sĩ gợi ý trong lịch sử cuộc gọi. Ngồi ra, bệnh
nhân có cơ hội tham gia cộng đồng hỏi đáp, đăng những câu hỏi thắc mắc
của mình để nhận được sự hỗ trợ từ các bác sĩ khác trong ứng dụng.
1.4.2. Bác sĩ:

-

Đối với bác sĩ, ứng dụng mang đến sự tiện lợi và tối ưu hóa cơng việc quản
lý lịch trình và thơng tin cá nhân. Họ có khả năng xác nhận và quản lý lịch
hẹn từ bệnh nhân một cách thuận tiện, giúp tổ chức thời gian làm việc một

14


cách hiệu quả. Cũng như bệnh nhân, bác sĩ có thể thực hiện cuộc gọi video
tư vấn, mang lại lợi ích lớn cho việc tư vấn từ xa và khám chữa bệnh.
-


Quản lý hồ sơ sức khỏe của bệnh nhân trở nên dễ dàng hơn với tính năng
ghi chép, ghi nhận thông tin về bệnh án và đánh dấu quá trình điều trị. Bác
sĩ cũng có thể tham gia vào cộng đồng hỏi đáp trong ứng dụng để giúp đỡ
bệnh nhân và trả lời các thắc mắc về sức khỏe. Việc quản lý thông tin cá
nhân cũng giúp bác sĩ duy trì sự chính xác và bảo mật trong q trình sử
dụng ứng dụng.

1.5.

Phương pháp thực hiện

-

Tìm hiểu cơng nghệ: Flutter.

-

Tìm hiểu các cơng cụ hỗ trợ: Figma, Draw.io (WebApp hỗ trợ vẽ diagram).

-

Môi trường làm việc: notion.com.

-

Thu thập yêu cầu thơng qua:
o Tìm hiểu dựa trên các bài báo nghiên cứu.
o Tìm hiểu các ứng dụng hiện có trên thị trường.

-


Phân tích và xác định yêu cầu.

-

Thiết kế:
o Thiết kế đối tượng
o Thiết kế dữ liệu
o Thiết kế giao diện

-

Cài đặt.

-

Kiểm thử.

-

Hồn thiện sản phẩm.

1.6.

Cơng nghệ sử dụng

- Cơng cụ thiết kế UI/UX: Figma.
- Ngôn ngữ sử dụng: Dart.
- Xây dựng ứng dụng di động: Flutter


15


- Cơ sở dữ liệu: Firebase.
- Kiến trúc ứng dụng: Bloc.
1.7.

Quá trình thực hiện

Trải qua quá trình tìm hiểu và thực hiện đề tài, nhóm đã giải quyết được các vấn
đề đặt ra ban đầu, từng bước giải quyết và liên tục đặt ra những vấn đề mới để
ngày càng hồn thiện sản phẩm. Những bước thực hiện:

- Phân tích u cầu bài tốn.
- Lựa chọn nền tảng cơng nghệ phù hợp với yêu cầu.
- Nghiên cứu cơ sở lý thuyết của công nghệ lựa chọn.
- Áp dụng lý thuyết vào xây dựng ứng dụng thực tiễn.
- Kiểm tra và khám phá các ứng dụng tương tự để tối ưu hố trải nghiệm
người dùng và cải thiện các tính năng cho ứng dụng.
Link github: />
16


Chương 2. CƠ SỞ LÝ THUYẾT
2.1.

Firebase

2.1.1. Giới thiệu [3.1]


- Firebase ở đây chính là dịch vụ cơ sở dữ liệu hoạt động trên nền tảng của
đám mây – cloud. Đi kèm với đó chính là hệ thống máy chủ cực kỳ mạnh mẽ
đến từ Google. Chức năng chính đó là giúp người sử dụng lập trình được
những ứng dụng bằng phương pháp đơn giản hóa các thao tác cùng đa dạng
cơ sở dữ liệu.

- Cụ thể đó chính là những giao diện lập trình cho ứng dụng API đơn giản.
Mục đích đó là tăng số lượng người sử dụng, thu lại nhiều lợi nhuận hơn bao
giờ hết. Đặc biệt đó còn là dịch vụ đa năng và bảo mật cực hồn hảo.

Hình 2.1 Firebase
2.1.2. Cách hoạt động [3.2]

- Phát triển ứng dụng di động: Firebase giúp lập trình viên phát triển ứng
dụng di động một cách nhanh chóng và giúp giảm thiểu chi phí. Bên cạnh đó,
Firebase cho phép phát triển ứng dụng trên cả nền tảng iOS và Android.

- Phát triển ứng dụng web: Các API đơn giản và hữu dụng giúp bạn có thể
xây dựng ứng dụng mà không cần backend và server.

17


- Lưu trữ và đồng bộ dữ liệu: Firebase thường xun sao lưu dữ liệu nhằm
đảo bảo tính sẵn có của dữ liệu. Bên cạnh đó, chức năng này của Firebase
cịn giúp cho mọi thơng tin và dữ liệu của người dùng sẽ được bảo mật một
cách tốt nhất nếu có trường hợp xấu xảy ra.

- Quản lý đăng nhập: Firebase Authentication giúp nhà phát triển quản lý
người dùng ứng dụng một cách đơn giản và an toàn. Cụ thể, Firebase cung

cấp nhiều phương pháp quản lý đăng nhập thông qua email với mật khẩu
Google và Facebook.
2.1.3. Ưu điểm [3.2]

- Sử Dụng Đơn Giản, Dễ Dàng.
- Tốc Độ Phát Triển Nhanh Chóng.
- Nền Tảng Google Phát Triển Mạnh Mẽ.
- Firebase App Không Sở Hữu Máy Chủ.
2.1.4. Nhược điểm [3.1]

- Nền Tảng Không Hoạt Động Tại Nhiều Quốc Gia.
- Firebase Chỉ Hoạt Động Với NoSQL Và CSDL.
- Firebase Chỉ Chạy Trên Google Cloud.

2.2.

Dart

- Dart là một ngơn ngữ lập trình được thiết kế bởi Lars Bak và Kasper Lund và
được phát triển bởi Google. Ngơn ngữ lập trình có thể được sử dụng để phát
triển ứng dụng web và thiết bị di động cũng như ứng dụng máy chủ và máy
tính để bàn. [4.2]

- Nó là một ngơn ngữ dựa trên lớp, hướng đối tượng với cú pháp kiểu C. Nó
có thể biên dịch thành mã máy, JavaScript hoặc WebAssugging. Nó hỗ trợ

18


các giao diện, mixin, các lớp trừu tượng, tổng quát thống nhất và suy luận

kiểu. [4.2]

Hình 2.2 Dart [4.2]

2.3.

Flutter

2.3.1. Giới thiệu [1.2]

- Flutter là một bộ công cụ phát triển phần mềm giao diện người dùng với mã
nguồn mở do Google tạo ra. Flutter được sử dụng để phát triển các ứng dụng
đa nền tảng cho nhiều hệ điều hành như: iOS, Android, Linux, … từ một cơ
sở mã nguồn duy nhất.

- Flutter có hai thành phần chính đó là:
o Một Software Development Kit (SDK): Ở đây tích hợp các cơng cụ
có khả năng phát triển các ứng dụng của bạn, trong đó có các cơng cụ
giúp bạn biên dịch mã của mình thành mã máy gốc (mã cho Android
và iOS).
o Một UI Library based on widgets (Framework): Tổng hợp các
thành phần giao diện người dùng (UI) có thể tái sử dụng như: text
input, button, slider, … hỗ trợ bạn có thể cá nhân hóa theo nhu cầu sử
dụng.

19


Hình 2.3 Flutter
2.3.2. Tính năng [1.2]


- Flutter được xem là một react framework.
- Lập trình viên có thể sử dụng ngơn ngữ lập trình Dart rất đơn giản và thuận
tiện bởi nhờ Flutter.

- Người dùng dễ dàng trải nghiệm, xây dựng giao diện và sửa lỗi nhanh chóng
nhờ tính năng hot reload.

- Giao diện người dùng đẹp mắt, hoạt động phong phú, scroll mượt mà và khả
năng tự nhận thức nền tảng của các widget built – in.

- Bằng cách thức tập hợp các layout, platform, và widget đa dạng mà
framework có thể giải quyết những thách thức khó khăn trong giao diện
người dùng.

- Đạt hiệu năng cao.
- Flutter có khả năng thể hiện cùng một UI trên nhiều nền tảng.
2.3.3. Lí do sử dụng [1.2]

- Phát triển phần mềm nhanh chóng.
- Giao diện thu hút, bắt mắt.

20



×