1. Trang chủ
  2. » Cao đẳng - Đại học

ỨNG DỤNG THEO dõi và QUẢN lý sức KHỎE cá NHÂN (đồ án SE121 l21 PMCL)

50 194 2

Đ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

Định dạng
Số trang 50
Dung lượng 1,36 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thông qua thời gian tìm hiểu ở các bài báo, sách vở và tin tức trực tuyến, nhóm chúng em nhận thấy được những nhu cầu sau cho việc theo dõi và cảnh báo sức khỏe: Thứ nhất, người dùng mon

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Giáo viên hướng dẫn: Ths Trần Anh Dũng

Nhóm sinh viên thực hiện:

1 Trương Bá Cường 18520013

2 Trương Nhật Tiến 18521494

Trang 2

Chương 1 TỔNG QUAN VỀ ĐỀ TÀI 5

Trang 3

3.2.2.7 Tìm kiếm thông tin về bệnh 17

Trang 5

Chương 1 TỔNG QUAN VỀ ĐỀ TÀI 1.1 Giới thiệu đề tài

Ngày nay, đời sống kinh tế của con người tăng cao khiến cho nhu cầu chăm sóc sức khỏe cũng tăng theo Các dịch vụ y tế phải nâng cao chất lượng,

mở rộng quy mô, hình thức để đáp ứng nhu cầu của người dân Trong bối cảnh

xã hội ngày càng phát triển, việc áp dụng công nghệ trong lĩnh vực y tế đã không còn xa lạ

Thông qua thời gian tìm hiểu ở các bài báo, sách vở và tin tức trực tuyến, nhóm chúng em nhận thấy được những nhu cầu sau cho việc theo dõi và cảnh báo sức khỏe:

Thứ nhất, người dùng mong muốn theo dõi các chỉ số sức khỏe của mình,

từ đó có được đánh giá theo các chuyên gia

Thứ hai, các thông tin về bệnh như mô tả, triệu chứng, tin tức về bệnh đó cũng được người dùng phần lớn quan tâm

Thỏa theo những nhu cầu đó, nhóm chúng em quyết định xây dựng một ứng dụng điện thoại di động nhằm giúp người dùng trong việc theo dõi sức khỏe cá nhân của mình

1.2 Đối tượng nghiên cứu

Trang 6

○ Phần lớn người trung niên, người lớn tuổi và một số người trẻ có nhu cầu theo dõi sức khỏe bản thân

1.3 Phương pháp nghiên cứu

Nhóm đã sử dụng các phương pháp:

- Đọc tài liệu

- Phân tích các ứng dụng hiện có

1.4 Nhiệm vụ của đề tài

Để tài “Ứng dụng theo dõi và cảnh báo sức khỏe” là một ứng dụng chạy trên điện thoại

· Ứng dụng dành cho Người dùng:

o Đăng nhập: đăng nhập bằng tài khoản Google, Facebook

o Quản lý huyết áp, đường huyết, nhu cầu nước, nhịp tim cho người dùng

o Lưu trữ thông tin thuốc, bệnh cho người dùng tra cứu

o Cảnh báo tình trạng sức khỏe

o Chỉnh sửa thông tin cá nhân

Ø Mục tiêu của đề tài này là:

§ Tìm hiểu cách xây dựng ứng dụng trên điện thoại di động

§ Xây dựng thành công ứng dụng giúp theo dõi sức khỏe và cảnh báo cho người dùng

Trang 7

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về Flutter

2.1.1 Khái niệm

Flutter là UI Framework mã nguồn mở miễn phí phát triển ứng dụng đa nền tảng dành cho di động, tạo bởi Google và phát hành vào tháng 5 năm 2017 Flutter gồm 2 thành phần quan trọng:

Một SDK (Software Development Kit): Một bộ sưu tập các công cụ sẽ giúp bạn phát triển các ứng dụng của mình Điều này bao gồm các công cụ để biên dịch mã của bạn thành mã máy gốc (mã cho iOS và Android)

Một Framework (UI Library based on widgets): Một tập hợp các thành phần

UI có thể tái sử dụng (button, text inputs, slider, ) giúp bạn có thể cá nhân hóa tùy theo nhu cầu của riêng mình

2.1.2 Kiến trúc của Flutter

Flutter được xây dựng với C/C++, Dart, Skia (2D rendering engine), Flutter compile toàn bộ code trực tiếp thành code ARM x86 từ đó có thể dễ dàng sử dụng GPU của thiết bị cũng như gọi các API native một các dễ dàng

Flutter cung cấp các widgets (bao gồm cả Material Design và Cupertino (IOS styled) widgets), được quản lý và render bởi Flutter’s framework và engine Flutter còn tích hợp cả animation, rendering, widgets, gestures vào trong framework để lập trình viên có thể tinh chỉnh giao diện đến tận pixel với hiệu năng cực tốt Nhờ vậy, Với Flutter, không có giới hạn nào về giao diện

Trang 8

- Truy cập các tính năng và SDK native: Làm cho ứng dụng trở nên sống động với API của platform, SDK của bên thứ ba và native code

Nó cho phép sử dụng lại mã Java, Swift và ObjC hiện tại của mình, truy cập các tính năng và SDK native trên iOS và Android

Trang 9

- Phát triển ứng dụng thống nhất: Flutter có các công cụ và thư viện để giúp bạn dễ dàng đưa ý tưởng của mình vào cuộc sống trên iOS và Android Nếu bạn chưa có kinh nghiệm phát triển trên thiết bị di động, thì Flutter là một cách dễ dàng và nhanh chóng để xây dựng các ứng dụng di động tuyệt đẹp

- Tính năng hot reload: Tính năng hot-reload của Flutter là một tính năng mang tính cách mạng giúp nó khác biệt với tất cả các đối thủ cạnh tranh Sử dụng hot reload, các nhà phát triển hiện có thể thay đổi

mã và ngay lập tức nhìn thấy chúng trong thời gian chạy trong bản xem trước ứng dụng Không cần phải biên dịch lại code mỗi lần

2.2 Tổng quan về Dart

2.2.1 Khái niệm

Dart là ngôn ngữ lập trình đa mục đích được phát triển bởi Google và sau đó được Ecma (ECMA-408) phê chuẩn làm tiêu chuẩn Nó được sử dụng để xây dựng các ứng dụng web, server, máy tính để bàn và thiết bị di động

Dart là một ngôn ngữ hướng đối tượng, được xác định theo lớp, với cơ chế garbage-collected, sử dụng cú pháp kiểu C để dịch mã tùy ý sang JavaScript

Nó hỗ trợ interface, mixin, abstract, generic, static typing và sound type Dart là ngôn ngữ mã nguồn mở và miễn phí, được phát triển trên GitHub

2.2.2 Đặc điểm

- Hỗ trợ lập trình hướng đối tượng OOP

- Hỗ trợ HTML DOM framework để bạn khai thác DOM đa trình duyệt

- Hỗ trợ lập trình không đồng bộ async

Trang 10

- Hỗ trợ deferred loading từ Dart 1.6 Tính năng sẽ giúp bạn cải thiện được hiệu suất khi khởi động ứng dụng bởi vì nó sẽ khởi tạo các package nào đang được sử dụng trong ứng dụng của bạn

- Tích hợp với Polymer project để bạn xây dựng các web components và tái sử dụng lại trong các ứng dụng khác trong tương lai

- Tích hợp với Angular để bạn có thể tạo ứng dụng web theo mô hình MVC có thể dễ dàng bảo trì, dễ kiểm thử và clean code hơn

- Hỗ trợ các thư viện toán học để bạn xây dựng các ứng dụng game và ứng dụng liên quan đến việc tính toán

- Hỗ trợ các kiểu dữ liệu phố biến như số nguyên, chuỗi, số thực

➢ Ưu điểm của Dart

- Năng suất: Cú pháp Dart rõ ràng và súc tích, công cụ của nó đơn giản nhưng mạnh mẽ Type-safe giúp bạn xác định sớm các lỗi tinh tế Dart

có các thư viện cốt lõi và một hệ sinh thái gồm hàng ngàn package

- Nhanh: Dart cung cấp tối ưu hóa việc biên dịch trước thời hạn để có được

dự đoán hiệu suất cao và khởi động nhanh trên các thiết bị di động và web

- Di động: Dart biên dịch thành mã ARM và x86, để các ứng dụng di động của Dart có thể chạy tự nhiên trên iOS, Android và hơn thế nữa Đối với các ứng dụng web, chuyển mã từ Dart sang JavaScript

- Dễ gần: Dart quen thuộc với nhiều nhà phát triển hiện có, nhờ vào cú pháp và định hướng đối tượng không gây ngạc nhiên của nó Nếu bạn đã biết C++, C# hoặc Java, bạn có thể làm việc hiệu quả với Dart chỉ sau vài ngày

- Reactive Dart: rất phù hợp với lập trình Reactive, với sự hỗ trợ để quản

lý các đối tượng tồn tại trong thời gian ngắn, chẳng hạn như các widget

Trang 11

không đồng bộ thông qua các tính năng ngôn ngữ và API sử dụng các đối tượng Future và Stream

2.3 Tổng quan về Firebase

2.3.1 Khái niệm

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

2.3.2 Lịch sử phát triển

Gần một thập niên trước, Firebase ra đời với tiền thân là Envolve Đây là một nền tảng đơn giản chuyên cung cấp những API cần thiết để tích hợp tính năng chat vào trang web Bên cạnh ứng dụng nhắn tin trực tuyến, Envolve còn được người dùng sử dụng để truyền và đồng bộ hóa dữ liệu cho những ứng dụng khác như các trò chơi trực tuyến,… Do đó, các nhà sáng lập đã tách biệt

hệ thống nhắn tin trực tuyến và đồng bộ dữ liệu thời gian thực thành hai phần riêng biệt

Trên cơ sở đó, năm 2012, Firebase ra đời với sản phẩm cung cấp là dịch vụ Backend-as-a-Service Tiếp đến, vào năm 2014, Google mua lại Firebase và phát triển nó thành một dịch vụ đa chức năng được hàng triệu người sử dụng cho đến hiện nay

2.3.3 Cách thức hoạt động

a Firebase Realtime Database

Trang 12

Khi đăng ký một tài khoản trên Firebase để tạo ứng dụng, bạn đã có một cơ sở

dữ liệu thời gian thực Dữ liệu nhận được dưới dạng JSON Đồng thời nó cũng luôn được đồng bộ thời gian thực đến mọi kết nối client

Đối với các ứng dụng đa nền tảng, tất cả các client đều sử dụng cùng một cơ

sở dữ liệu Nó được tự động cập nhật dữ liệu mới nhất bất cứ khi nào các lập trình viên phát triển ứng dụng Cuối cùng, tất cả các dữ liệu này được truyền qua kết nối an toàn SSL có bảo mật với chứng nhận 2048 bit

Trong trường hợp bị mất mạng, dữ liệu được lưu lại ở local Vì thế khi có mọi

sự thay đổi nào đều được tự động cập nhật lên Server của Firebase Bên cạnh

đó, đối với các dữ liệu ở local cũ hơn với Server thì cũng tự động cập nhật để được dữ liệu mới nhất

b Firebase Authentication

Firebase Authentication cung cấp dịch vụ backend, SDKs sẵn sàng sử dụng,

và các thư viện UI được làm sẵn để giúp ứng dụng xác thực người dùng

Thông thường, phải mất cả tháng để xây dựng hệ thống xác thực và thường xuyên phải bảo trì nó Nhưng nếu sử dụng Firebase, bạn chỉ dưới 10 dòng code để xử lý mọi thứ, bao gồm cả những thao tác phức tạp như sát nhập tài khoản

Bạn có thể xác thực người dùng qua các phương thức như: Email, Phone number, Facebook, Google, Twitter,…

Trang 13

Sử dụng Firebase Authentication giúp dễ dang hơn cho việc xây dựng hệ thống xác thực an toàn, trong khi cũng cải thiện trải nghiệm cho người dùng

c Firebase storage

Với firebase storage các lập trình viên có thể lưu trữ dữ liệu trực tiếp trên server của firebase như hình ảnh, video, tập tin một cách dễ dàng

Firebase còn bổ sung Google security để tải lên và tải về các ứng dụng

firebase của bạn Bạn có thể sử dụng nó để lưu trữ hình ảnh, âm thanh, video hoặc nội dung do người dùng tạo ra Qủa thật đây là một dịch vụ lưu trữ đối tượng mạnh mẽ, đơn giản và hiệu quả chi phí

d Firebase Cloud Messaging (FCM)

Firebase Cloud Messaging cung cấp một kết nối hiệu quả và đáng tin cậy giữa server và thiết bị của bạn, cho phép bạn gửi và nhận tin nhắn hoặc thông báo trên iOS, Android và Web mà không mất thêm chi phí Bạn có thể gửi tin nhắn thông báo (giới hạn 2KB) hoặc tin nhắn dữ liệu (giới hạn 4KB)

FCM có thể gửi tin nhắn ngay lập tức hoặc trong tương lai theo múi giờ của người dùng Bạn có thể gửi dữ liệu tùy chỉnh như cài đặt độ ưu tiên, âm

thanh, ngày hết hạn, và cũng theo dõi các sự kiện tùy chỉnh

FCM được tích hợp hoàn toàn với Firebase Analytics, cho phép bạn khả năng theo dõi chi tiết các hoạt động

Trang 14

CHƯƠNG 3 PHÂN TÍCH YÊU CẦU 3.1 Quy trình sử dụng các chức năng của hệ thống

3.1.1 Đăng nhập

3.1.1.1 Đăng nhập bằng Facebook

B1: Người dùng chọn chức năng “Đăng nhập bằng Facebook”

B2: Hệ thống chuyển sang giao diện đăng nhập của Facebook

B3: Người dùng đăng nhập vào tài khoản facebook của cá nhân mình B4: Nếu là lần đầu tiên đăng nhập, hệ thống tự động tạo tài khoản trong ứng dụng cho người dùng

3.1.1.2 Đăng nhập bằng tài khoản Google

B1: Người dùng chọn chức năng “Đăng nhập bằng tài khoản Google” B2: Hệ thống chuyển sang giao diện đăng nhập của Google

B3: Người dùng đăng nhập vào tài khoản Google của cá nhân mình B4: Nếu là lần đầu tiên đăng nhập, hệ thống tự động tạo tài khoản trong ứng dụng cho người dùng

3.1.2 Quản lý thông tin tài khoản

B1: Người dùng chọn biểu tượng “Người dùng” ở góc trái phía trên màn hình

B2: Hệ thống chuyển sang màn hình Thông tin người dùng

B3: Người dùng thay đổi Ảnh đại diện, Họ tên, Ngày sinh, Giới tính và xác nhận để cập nhật lên hệ thống

3.1.3 Quản lý thông tin sức khỏe

B1: Người dùng chọn mục tiêu chí sức khỏe cần quản lý thông tin

Trang 15

B2: Hệ thống chuyển sang màn hình quản lý theo từng tiêu chí sức khỏe

3.1.4 Tìm kiếm thông tin về bệnh

B1: Người dùng chọn thanh tìm kiếm thông tin bệnh

B2: Người dùng nhập tên bệnh cần tìm kiếm

B3: Hệ thống hiển thị các thông tin (mô tả, triệu chứng, chuẩn đoán, thuốc điều trị) về bệnh

3.2 Đặc tả yêu cầu

3.2.1 Danh sách yêu cầu hệ thống

STT Tên yêu cầu Ghi chú

1 Đăng nhập Người dùng đăng nhập bằng tài khoản

Facebook hoặc tài khoản Google

2 Quản lý thông tin cá nhân Người dùng thay đổi ảnh đại diện, họ tên,

ngày sinh, giới tính

Trang 16

3.2.2 Phân tích yêu cầu hệ thống

3.2.2.1 Đăng nhập

Người dùng sử dụng tài khoản đã đăng ký để đăng nhập vào ứng dụng,

có thể đăng nhập bằng Google hoặc Facebook thay thế

3.2.2.2 Quản lý thông tin cá nhân

Người dùng sau khi đăng nhập thành công có thể thêm, chỉnh sửa, xóa các thông tin: Họ tên, mật khẩu, ngày sinh, giới tính, địa chỉ, số điện thoại Hệ thống sẽ ghi nhận lại thông tin và hiển thị vào trang cá nhân

3.2.2.3 Quản lý chỉ số huyết áp

Người dùng sau khi truy cập vào màn hình quản lí huyết áp có thể thêm, chỉnh sửa chỉ số Tâm thu, Tâm trương Sau đó, hệ thống sẽ đưa ra đánh giá cho các chỉ số dựa trên các nghiên cứu được chứng nhận và thực hiện gửi các thông báo nhắc nhở sau một khoảng thời gian tùy theo mức độ tình trạng sức khỏe hiện tại của người dùng Hệ thống sẽ ghi nhận lại thông tin và hiển thị lịch sử

đo cho người dùng

3.2.2.4 Quản lý chỉ số nhu cầu nước

Người dùng sau khi truy cập vào màn hình quản lí nhu cầu nước có thể thêm, chỉnh sửa cân nặng của bản thân Sau đó, hệ thống sẽ đưa ra lời khuyên

về lượng nước cần thiết mỗi ngày để có cơ thể khỏe mạnh dựa trên cân nặng của người dùng Hệ thống sẽ ghi nhận lại thông tin và hiển thị lịch sử cân nặng cho người dùng

Trang 17

3.2.2.5 Quản lý chỉ số nhịp tim

Người dùng sau khi truy cập vào màn hình quản lí nhịp tim có thể thêm, chỉnh sửa chỉ số Nhịp tim (đập bao nhiêu lần / phút) Sau đó, hệ thống sẽ đưa

ra đánh giá cho các chỉ số dựa trên các nghiên cứu được chứng nhận Hệ thống

sẽ ghi nhận lại thông tin và hiển thị lịch sử đo cho người dùng

3.2.2.6 Quản lý chỉ số đường huyết

Người dùng sau khi truy cập vào màn hình quản lí đường huyết có thể thêm, chỉnh sửa chỉ số Đường huyết tại thời điểm ăn no hoặc đói bụng Sau đó,

hệ thống sẽ đưa ra đánh giá cho các chỉ số dựa trên các nghiên cứu được chứng nhận Hệ thống sẽ ghi nhận lại thông tin và hiển thị lịch sử đo cho người dùng

3.2.2.7 Tìm kiếm thông tin về bệnh

Người dùng có thể tìm kiếm các thông tin về bệnh (triệu chứng, mô tả, chuẩn đoán, điều trị) Hệ thống trình bày một cách khoa học để giúp người dùng

1 Users Lưu trữ thông tin của người dùng

2 Blood Pressure Lưu trữ thông tin chỉ số huyết áp của người

Trang 18

6 Diseases Lưu trữ thông tin về bệnh tật

3.1.2 Chi tiết các bảng dữ liệu

3.1.2.1 Bảng Users

2 name string Tên của người dùng

3 birthDay datetime Ngày sinh của người dùng

4 photoURL string Đường dẫn đến ảnh đại diện của người

Trang 19

1 id string Mã định danh chỉ số đo huyết áp

2 ownerID string Mã định danh người dùng

4 tamTruong int Chỉ số tâm trương

5 ngayDo Datetime Ngày ghi nhận chỉ số đo

3.1.2.3 Bảng Blood Sugar

1 id string Mã định danh chỉ số đo đường huyết

2 ownerID string Mã định danh người dùng

3 trangThai string Trạng thái (no, đói) của người dùng

4 duongHuyet int Chỉ số đường huyết của người dùng

5 ngayDo Datetime Ngày ghi nhận chỉ số đo

3.1.2.4 Bảng Heart Rate

1 id string Mã định danh chỉ số đo nhịp tim

2 ownerID string Mã định danh người dùng

3 nhipTim int Số lần tim đập trên 1 phút

Trang 20

4 ngayDo Datetime Ngày ghi nhận chỉ số đo

3.1.2.5 Bảng Water

1 id string Mã định danh chỉ số đo nhu cầu nước

2 ownerID string Mã định danh người dùng

3 canNang int Cân năng theo kg của người dùng

4 luongNuoc int Lượng nước tính theo ml người dùng

cần nạp vào cơ thể mỗi ngày

5 ngayDo Datetime Ngày ghi nhận chỉ số đo

3.1.2.6 Bảng Diseases

3 moTa string Mô tả chi tiết căn bệnh

4 trieuChung string Triệu chứng căn bệnh

5 chuanDoan string Chuẩn đoán căn bệnh

6 dieuTri string Cách điều trị căn bệnh

Trang 21

CHƯƠNG 4 HIỆN THỰC HỆ THỐNG 4.1 Sơ đồ use-case

4.1.1 Danh sách các use-case

1 Quản lý thông tin cá nhân Người dùng thêm, sửa, xóa thông tin cá

nhân (Họ tên, ngày sinh, địa chỉ, )

2 Đăng nhập Người dùng đăng nhập vào hệ thống

3 Nhập thông tin sức khỏe Người dùng nhập các chỉ số sức khỏe

4.1.2.1 Use case quản lý thông tin cá nhân

Tác nhân

chính

Người dùng Tác nhân phụ Không

Trang 22

Mô tả Người dùng quản lý thông tin cá nhân

2 Hệ thống hiển thị giao diện thông tin cá nhân

3 Người dùng nhập, sửa thông tin cá nhân

Trang 23

Người dùng Tác nhân phụ Không

2 Người dùng nhập tài khoản và mật khẩu

3 Người dùng chọn nút đăng nhập

4 Người dùng đăng nhập thành công, hệ thống chuyển sang giao diện chính

Trang 24

1.2 Quay lại bước 2 ở dòng sự kiện cơ bản

4.1.2.3 Use case nhập thông tin sức khỏe

Tác nhân

chính

Người dùng Tác nhân phụ Không

Trang 25

Xảy ra khi Người dùng muốn lưu thông tin sức khỏe vào hệ thống

1 Người dùng chọn chức năng kiểm soát sức khỏe

2 Người dùng chọn tiêu chí sức khỏe để nhập liệu (huyết áp, đường huyết, nhịp tim, cân nặng, )

3 Hệ thống hiển thị màn hình tiêu chí sức khỏe

4 Người dùng chọn chức năng thêm chỉ số mới

5 Hệ thống hiển thị form cho người dùng nhập liệu

6 Người dùng nhập liệu cho tiêu chí vừa chọn

7 Hệ thống đưa ra đánh giá, cảnh báo dựa trên chỉ số theo tiêu chuẩn khoa học

Ngày đăng: 05/09/2021, 20:49

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w