1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo Đồ án môn học lập trình di Động Đề tài ứng dụng hỗ trợ y tế

31 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Hỗ Trợ Y Tế
Tác giả Hồ Hồng Nghiệp, Nguyễn Tiến Trung, Nguyễn Trung Quan
Người hướng dẫn Th.S. Nguyễn Thái Công Nghĩa
Trường học Đại Học Quốc Gia TP.HCM
Chuyên ngành Lập trình di động
Thể loại Báo cáo
Năm xuất bản 2023
Thành phố TP.Hồ Chí Minh
Định dạng
Số trang 31
Dung lượng 4,3 MB

Nội dung

CHƯƠNG 1: GIỚI THIỆU ỨNG DỤNG Ứng dụng sẽ cung cấp các tính năng hỗ trợ sức khỏe cơ bản như: —_ Đặt lịch khám bệnh: Người dùng có thể đặt lịch khám trực tuyến một cách nhanh chóng.. — _

Trang 1

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA ĐIỆN TỬ - VIỄN THÔNG

BỘ MÔN VIÊN THÔNG - MẠNG

DE TAL UNG DUNG HO TRO Y TE

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

NGUYÊN THÁI CÔNG NGHĨA

Trang 2

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA ĐIỆN TỬ - VIỄN THÔNG

BỘ MÔN VIÊN THÔNG - MẠNG

NHÓM 2

BAO CAO DO AN CUOI KÌ

BAO CAO BO AN MÔN HỌC: LẬP TRÌNH DI ĐỘNG

DE TAL UNG DUNG HO TRO Y TE

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

NGUYÊN THÁI CÔNG NGHĨA DANH SÁCH SINH VIÊN THỰC HIỆN:

Trang 3

LỜI CÁM ƠN

Chúng em xin gửi lời cảm ơn chân thành đến thầy Nguyễn Thái Công Nghĩa — giảng viên môn Lập trình di động của Chuyên ngành Viễn Thông — Mang, Khoa Điện tử - Viễn thông Trong quá trình học tập và tìm hiểu môn học, chúng em nhận được sự quan tâm, giúp

đỡ, hướng dẫn tận tình, tâm huyết của thầy Thầy đã trang bị cho chúng em những kiến thức,

kỹ năng cơ bản cần có, đồng thời giúp chúng em định hướng phương pháp học tập để hoàn thành đồ án này Thông qua những kiến thức đã được học, chúng em đã cô gắng hoàn thiện

đồ án này một cách chỉnh chu nhất có thê

Tuy nhiên, trong quá trình thực hiện đồ án, vì kiến thức còn hạn chế nên chúng em

không tránh khỏi còn nhiều thiếu sót khi tìm hiểu, thực hiện, đánh giá và trình bày Chúng

em rất mong sẽ nhận được sự quan tâm và góp ý của thầy để đồ án được hoàn chỉnh và đầy

đủ hơn

Lời cuối cùng, chúng em xin chúc thầy nhiều sức khoẻ, thành công và hạnh phúc

Trang 4

MỤC LỤC

(00/80 VN - 4 ƠỊỎ 5

0:00/9)1986119/9)089:010080 1080100000078 .-ẬäâẬậẬÄẰH)HH 6

CHƯƠNG 2: CHỨC NĂNG ỨNG DỤNG Q.0 2.vS TH TH 11121 1111.1111 errie 7 CHƯƠNG 3: THÀNH PHẢN ỨNG DỤNG 2n n2 v2.2 TH 22H11 111111111 rree 8 “hs, 0 8 <A 8

3.1.1 Ngơn ngữ lập trình Kotlin c=hhhnc ¡5 (ÍỈ

“h7 nh nh SP 2T 9o: 9

3.1.3 Thành phần xác thực va lưu trữ - oogle FirebasSe + tt 2 EEvv Hy grrec 10 3.2 Các thành phần chính trong ứng dụng 25 S2 SE St +t#ExeexEek xxx reo 11 3.2.1 So db hé thong ýš ồễồễồ - d 11

B.2.2 ACTIVITY 11

E5 9°

3.2.4 ODJECt MOE] oo ố.e

3.3 Quy trìnnh vận hành các chức năng 3.3.1 Tao va dang nhap tat khoan nh eee eee ẻ

3.3.2 Xem, tạo, xĩa và chính sửa hồ sơ bệnh nhân - - E231 SE SE TH rrkt 19 3.3.3 Tạo, xem lịch hẹn với bác sĩ 3.3.4 Liên lạc dịch vụ khẩn cấp se ng 3.3.5 Tìm kiếm và cập nhật tin tức về y tế, đời sống 3.3.6 Xem, thay đơi thơng tin bác sĩ nh HH H111 11111111 111011 11 HE 11111111 HH gu 24 3.3.7 Bác sĩ xem danh sách lịch hẹn và hỗ sơ bệnh án . - -Ă- 6 Ă E13 ES vs ng Hy rerry 25 3.4 Ưu điểm, hạn chế và hướng phát triển ứng dụng cˆ “hàn 5 .AAẬÄĂäĂẶ.,, ƠĨƠ 3.4.1.1 Tính ỨHg (HHR Ăn TH TH HT HH TH TH TT TK kh 3.4.1.2 Gi CIE n6 dẰƯiâ¬a¬aaaa nể

3.4.2 Hạn chế - Ăn 1T TY TT HT Hà TH TH TT Tà TT TT Hà Tà TT TT TH TH KH TT Tà Trà Kon na n ốố.ố ẻ.ố

J8 43000 D0017 .HA

IV 90) 0S) 904/01 .A Ơ ĐÁNH GIÁ THÀNH VIÊN 5 5c tt TH HH HH HH 0H11 Ho ĐÁNH GIÁ CỦA GIÁO VIÊN

Trang 5

TÓM TẮT

Ngày nay chúng ta đang sống trong thời đại công nghệ số Hầu hết mợi hoạt động của con người đều diễn ra trên các thiết bị công nghệ kỹ thuật số như điện thoại thông minh, máy tính bảng Theo thống kê, mỗi người dùng trung bình dành khoảng 5 giờ mỗi ngày trên điện thoại di động của mình

Điều này cho thấy điện thoại đã trở thành một phần không thê thiếu trong cuộc sống hàng ngày của mọi người Do đó, nhu cầu quản lý và chăm sóc sức khỏe một cách thuận tiện, nhanh chóng mà không cần phải đến trực tiếp các cơ sở y tế cũng ngày càng tăng Đây chính là cơ hội dé phát triển ứng dụng quản lý sức khỏe trực tuyến như ý tưởng của chúng

Trang 6

CHƯƠNG 1: GIỚI THIỆU ỨNG DỤNG

Ứng dụng sẽ cung cấp các tính năng hỗ trợ sức khỏe cơ bản như:

—_ Đặt lịch khám bệnh: Người dùng có thể đặt lịch khám trực tuyến một cách nhanh

chóng Hệ thống sẽ gửi thông báo nhắc lịch tới người dùng

— _ Hồ sơ bệnh nhân: Ứng dụng sẽ lưu trữ các thông tin cá nhân, tiền sử bệnh của người dùng đề cung cấp cho bác sĩ khi khám bệnh Người dùng có thê cập nhật hồ sơ

— Cuéc goi khan cap: Tính năng này giúp người dùng nhanh chóng liên lạc với đường dây nóng y tế trong trường hợp cần cấp cứu

—_ Tìm kiếm y tế: Người dùng có thê tra cứu thông tin về các bệnh, phòng khám, bác sĩ trên ứng dụng web

Ý tưởng này hướng tới mục tiêu hỗ trợ người dùng quản lý sức khỏe một cách thuận tiện, nhanh chóng thông qua ứng dụng di động

Trang 7

CHƯƠNG 2: CHỨC NĂNG ỨNG DỤNG

Đây là một ứng dụng hỗ trợ y tế, nên các chứng năng chính của nó sẽ liên quan mật thiết nhất định đến các thông tin y tế Dưới đây sẽ là những chức năng mà ứng dụng có thê làm được:

Đối với người dùng thường (bệnh nhân):

—_ Tạo và lưu trữ hồ sơ y tế của bản thân

— Đặt và xem lịch hẹn với bác sĩ trong viện

—_ Tra cứu và liên lạc nhanh chóng với các số điện thoại khân cấp, kế cả các đường dây không thuộc lĩnh vực y tế

— _ Tra cứu và duyệt nhanh các thông tin liên quan đến ngành y tế

Đối với các bác sĩ:

—_ Tạo và xem hồ sơ tài khoản của mình

— _ Tìm kiếm các lịch hẹn với bệnh nhân thuộc khoa của mình theo ngày

—_ Duyệt hoặc từ chối cuộc hẹn

Trang 8

CHUONG 3: THANH PHAN UNG DUNG

Kotlin được tài trợ bởi Google, được công bồ là một trong những ngôn ngữ chính thức cho Android Development năm 20 L7

3.1.1.2 Đặc điểm

Kotlin là ngôn ngữ lập trình hướng đối tượng và hỗ trợ các tính năng lập trình hướng đối tượng tiên tiễn như kế thừa, đa hình, đóng gói

Kiểu dữ liệu mạnh: Kotlin có hệ thống kiểu dữ liệu mạnh giúp tránh lỗi NullPointer

thường gặp ở Java Nó tự động xử lý kiểu dữ liệu null an toàn hơn

Lambda expressions: Kotlin hỗ trợ lambda expressions giúp viết code đồng bộ, không phải dùng lớp ấn danh Code trở nên súc tích và dé đọc hơn

Extension functions: Chung cho phép mở rộng chức năng cho các lớp không phải do minh tao ra, giúp code dé bao trì và mở rộng hơn

Coroutines: Là cơ chế đồng bộ hóa dễ sử dụng, giúp xử lý tác vụ nặng và I/O ma không cần luông

Dễ đọc: Cú pháp Kotlin gọn gàng và rõ ràng hơn Java nhờ cú pháp mạnh mẽ hơn

Tương thích Java: Kotlin code có thể chạy trên JVMI và tương tác với thư viện Java hiện có

Trang 9

3.1.2 Android Studio

Android Studio là một môi trường tích hợp phát triển (Integrated Development Environment — IDE) được phát triển bởi Google dành cho việc phát triển ứng dụng trên nền tảng Android Nó cung cấp một loạt các công cụ và tính năng đề giúp nhà phát triển xây dựng và triển khai ứng dụng Android một cách dễ dàng

Công cụ này cung cấp một giao diện trực quan và các trình biên dịch, trình gỡ lỗi, trình tạo giao diện người dùng, trình quản lý phiên bản và nhiều công cụ khác Nó hỗ trợ viết code trong ngôn ngữ Java hoặc Kotlin và tích hợp sẵn các thư viện và công cụ phát triển Android

Một trong những tính năng quan trọng của công cụ này là khả năng sử dụng Gradle, một hệ thống quản lý dự án mạnh mẽ Gradle cho phép bạn quản lý phụ thuộc, xây dựng, kiêm thử và đóng gói ứng dụng Android một cách linh hoạt và hiệu quả

Android Studio cung cấp một loạt các tính năng và công cụ để giúp nhà phát triển xây dựng ứng dụng Android, bao gồm:

— Bồ cục ứng dụng trực quan, giao diện thân thiện với người sử dụng Các nhà phát trién có thê thao tác nhanh chóng bằng các thao tác kéo thả, điều này giúp việc phat triển ứng dụng đơn giản và toàn điện hơn

— Chay img dung tirc thi hỗ trợ các thay đôi thực hiện trong quá trình phát triển Người

sử dụng có thê chạy thử ngay lập tức mà không mắt thêm thời gian xây dựng APK

và cài đặt

—_ Trình mô phỏng ứng dụng nhanh chóng, hỗ trợ mô phỏng hiên thị giống hệt một chiếc điện thoại Android đề nhà phát triển có thể kiểm tra ứng dụng trông như thế nào trong các thiết bị cài đặt

—_ Chỉnh sửa mã code nhanh chóng nhờ các mã gợi ý trong thư viện nhằm tăng tốc độ viết mã cũng như độ chính xác

— Instant Run gitp nha phat triên thay đối các ứng dụng đang chạy mà không cần thêm các thao tác xây dựng APK mới

—_ Hỗ trợ kết nổi Firebase giúp tạo các bản cập nhật trực tiếp và cung cấp kết nỗi cơ

Trang 10

—_ Có nhiều mẫu có sẵn giúp lập trình viên tạo mới ứng dụng đơn giản dựa vào công

cụ w1zard

— Tich hop tinh năng dò và sửa lỗi nhanh chóng

— Hỗ trợ tích hợp Maven và sử dụng kho lưu trữ Maven để quản lý các thư viện và phụ thuộc của dự án

3.1.3 Thành phần xác thực và lưu trữ - Google Firebase

Firebase là một nền tảng di động và web do Google cung cấp, giúp phát triển và quản

lý ứng dụng Firebase bao gồm các dịch vụ sau:

— Realtime Database*: Cơ sở dữ liệu thời gian thực cho phép dữ liệu được đồng bộ hóa giữa các thiết bị theo thời gian thực

— Cloud Firestore: Dich vu co so di ligu NoSQL dựa trên tài liệu, được thiét ké dé lưu trữ và truy vấn dữ liệu của ứng dụng

— Cloud Storage: Dich vụ lưu trữ đám mây cho phép lưu trữ dữ liệu dung lượng lớn

— Cloud Functions: Cho phép chay mã máy chủ không đồng bộ khi có sự kiện xảy ra trong ứng dụng

— Cloud Messaging: Dich vu nhan tin dam mây cho phép gửi thông báo đến thiết bị người dùng

— Cloud Identity and Access Management (LAM): Dich vụ quán lý danh tính và quyền truy cập cho phép quản lý quyền truy cập vào ứng dụng của bạn

Với việc tạo và xác thực tài khoản, Firebase sẽ có nhiều phương thức tạo và xác thực khác nhau, bao gồm: email, số điện thoại, tài khoản dịch vụ (Google, Facebook, Microsoft, Apple ) hoặc tài khoản nội bộ của doanh nghiệp Mỗi phương thức xác thực sẽ có từng ưu nhược điểm riêng Đối với ứng dụng của nhóm, phương thức xác thực là sử dụng chính email của người dùng đề tạo và đăng nhập tài khoản, áp dụng cho cả bác sĩ lẫn bệnh nhân

Về lưu trữ dữ liệu, Firebase cung cấp 2 lựa chọn: Realtime Database và FireStore Database Realtime vốn di la dang database có sẵn từ lúc có Firebase, về cơ bản giống như

một ñle JSON cỡ lớn để lưu trữ các thông tin, ưu điểm chính là tốc độ truy vẫn nhanh hơn

FireStore là phiên bản nâng cấp của Realtime, được tạo ra cho các yêu cầu truy vấn phức tạp hơn, do đó có cấu trúc dữ liệu cũng phân chia phức tạp hơn và được chia vào các

Trang 11

collection và document riêng lẻ, các chủ thể sẽ được lưu thành các document trong một collection Voi yéu cau truy vẫn và độ phức tạp của dữ liệu bệnh nhân, bác sĩ, các số khẩn cấp thì nhóm đã chọn FireStore làm database chính cho ứng dụng

AccountCreatingActivity

CreateProfleDoctorActvil) SettingsActivity Sign Up

v } AccountSigninActivity Log In |}——»< Role »—Doctor { MainDoctorActivity } ProttedetaidoctorActivity]

Đây là phần nòng cốt đề tạo nên logic và các thuật toán cho ứng dụng

Trong ứng dụng này, có tông cộng khoảng 18 Activity, được liệt kê trong các bảng bên dưới:

11

Trang 12

Các Activity chung:

AccountCreatingActivity Activity khởi chạy khi bệnh nhân hoặc bác sĩ chưa có tài

khoản và phải tạo tài khoản mới

AccountSignlInActivity Được khởi tạo ngay lúc ứng dụng khởi chạy, sử dụng cho

việc đăng nhập tài khoản được tạo trên ung dung

SettingsActivity Activity được khỏi chạy khi bệnh nhân/bác sĩ bắm vào

nút cài đặt trên màn hình đăng nhập đề truy cập vào giao điện cài đặt ứng dụng và xem thông tin ứng dụng

danh sách hồ sơ có trong tài khoản

ProfileDetailActivity Activity hién thị thông tin chỉ tiết của một hỗ sơ bất kỳ

trong danh sách

ProfileDetailEditActivity Activity giúp bệnh nhân chính sửa thông tin hồ sơ của

mình khi có bât kỳ thông tin cân cập nhật, sửa đôi

PickAppointmentActivity

Acticity nơi bệnh nhân có thê tạo một cuộc hẹn bằng cách chọn một hồ sơ, lựa chọn khoa, giờ và điền thêm thông tin bé sung

AppointmentListActivity Activity giúp bệnh nhân liệt kê các cuộc hẹn của từng hồ

sơ bằng cách tìm theo số điện thoại của hồ sơ đó

AppointmentDetailActivity Activity hién thị chỉ tiết thông tin một cuộc hẹn bắt kì

trong danh sách tìm được

EmergencyActivity Activity hiển thị các danh sách sô điện thoại khẩn cấp

Trang 13

hiện có và liên lạc với đường dây trợ giúp được chọn ngay lập tức

HealthWikiActivity

Activity dẫn bệnh nhân đến trang tra cứu và cập nhật các

tin tức về y tê, sức khỏe va đời sông

ProfileDetailDoctorActivity Activity giúp bác sĩ xem thông tin tài khoản của

mình

CreateProfileDoctorActivity Activity giúp bác sĩ sẽ khởi tạo hay chính sửa thông

tin tài khoản

AppointmentDetailDoctorActivity| cuộc hẹn bắt kì trong danh sách liệt kê được, và quyết định chấp nhận hay từ chối cuộc hẹn

AppointmentAdapter Adapter hỗ trợ hiển thị danh sách các cuộc hẹn, dùng cả

trong Activity cua bac si lan bénh nhân

CustomProfileAdapter Adapter hỗ trợ hiển thị danh sách các hồ sơ bệnh nhân mà

tài khoản da tao, chi co 6 Activity cua bénh nhân

CustomEmergencyAdapte

Adapter hỗ trợ hiển thị danh sách các số liên lạc khẩn cấp,

chỉ có 6 Activity cua bệnh nhân

Trang 14

3.2.4 Object Model

Đây là thành phần giúp định nghĩa và lưu giữ các thông tin thuộc tính của các object

Có 4 dạng ObJect được định nghĩa và sử dụng trong app:

—_ AppointmemtModel: dùng cho đã liệu của Ì cuộc hẹn

appUserProvince String Tinh/thành phố nơi bệnh nhân sinh sống

appSelectedDepartmer String Khoa khám bệnh đã chọn, theo ID khoa

appSelectedDate String Ngày khám bệnh đã chọn

appSelectedTime String Khung giờ khám đã chọn, theo mã khung giờ

appSymptomsinfo String Mô tả bô sung các triệu chứng

appDoctor String Bác sĩ thăm ee cm eo có bác sĩ tiếp

Trang 15

— EmergencyModel - đừng cho đữ liệu của 1 số khẩn cấp

Tên thuộc tính | Loại dữ liệu Miêu tả

name String Tên của đơn vị vận hành đường day khan cap

phone String Số điện thoại đường dây khẩn cấp

Trên database, các thuộc tính trên được lưu tại đường dẫn:

+ emergeney/<tên nội bộ đơn vị>! (đối với ngôn ngữ Anh)

+ emergency-vi/<tén ndi bộ đơn vị>l (đỗi với ngôn ngữ Việt)

hospita1-ChoRay

Chí có quản trị viên quản lý cơ sở đữ liệu mới có thê thêm, chỉnh sửa hoặc xóa các

document chứa các thông tin trên

— ProfileDoctorModel — ding cho théng tin của Ì tài khoản bác sĩ

15

Ngày đăng: 12/02/2025, 16:01