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

Xây dựng ứng dụng hỗ trợ theo dõi chăm sóc sức khỏe trẻ em trên android

109 641 3

Đ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 109
Dung lượng 2,03 MB

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

Nội dung

Nó có thể là một Active Program: chương trình có giao diện với người sử dụng hoặc là một background: chương trình chạy nền hay là dịch vụ. Android là hệ điều hành đa nhiệm, điều đó có

Trang 1

ĐẠI HỌC THÁI NGUYÊNTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Trang 2

THÁI NGUYÊN, NĂM 2016

Trang 3

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN

oOo

-ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Đề Tài:

XÂY DỰNG ỨNG DỤNG HỖ TRỢ CHĂM SÓC SỨC KHỎE

TRẺ EM TRÊN ANDROID

Giảng viên hướng dẫn: Ths Dương Thu Mây

Sinh viên: Nguyễn Thị Lan

Trang 4

LỜI CẢM ƠN

Lời đầu tiên, em xin chân thành cảm ơn trường Đại Học Công Nghệ Thông Tin và Truyền Thông- Đại học Thái Nguyên đã tạo điều kiện thuận lợi

cho phép em hoàn thành đồ án tốt nghiệp này

Em xin chân thành cảm ơn sự giúp đỡ và đóng góp ý kiến nhiệt tình của các

thầy - cô giáo trong bộ môn Mạng máy tính và truyền thông - Khoa Công Nghệ Thông Tin- Đại học Công Nghệ Thông Tin và Truyền Thông - Đại Học Thái Nguyên.

Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc nhất đến Cô giáo Dương Thu Mây, đã nhiệt tình giúp đỡ em trong suốt quá trình học tập và nghiên cứu

Và sau cùng em xin gửi lời cảm ơn đến gia đình, bạn bè những người luôn bên cạnh động viên và giúp đỡ em trong thời gian làm thực tập

Sinh viên thực hiện Nguyễn Thị Lan

Trang 5

LỜI CAM ĐOAN

Em xin cam đoan nội dung của đề tài hoàn toàn là do em nghiên cứu, tìm hiểu và tổng hợp từ các tài liệu liên quan, cũng như các kiến thức từ thực tế khi em học tập, rèn luyện trên ghế giảng đường, không sao chép hoàn toàn nội dung của các đề tài khác

Thái Nguyên, ngày tháng năm 2016

Sinh viênNguyễn Thị Lan

Trang 6

MỤC LỤC

LỜI NÓI ĐẦU 1

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

1.1 Tổng quan về hệ điều hành android 2

1.1.1 Giới thiệu chung về hệ điều hành android 2

1.1.2 Máy ảo Dalvik trong Android 2

1.1.3 Kiến trúc của android 3

1.1.4 Các thành phần cơ bản của ứng dụng Android 6

1.2 Tổng quan về phân tích thế kế hướng đối tượng UML 11

1.2.1 Giới thiệu chung về UML 11

1.2.2 Các đặc điểm cơ bản của hệ thống hướng đối tượng 12

1.2.3 Ưu nhược điểm của phân tích thiết kế hướng đối tượng 13

1.3 Ứng dụng mô hình UML trong thiết kế ứng dụng Android 13

1.3.1 Ứng dụng của UML 13

1.3.2 Các biểu đồ 14

1.3.3 Các kỹ thuật chung của UML 15

1.3.4 UML trong thiết kế ứng dụng Android 17

CHƯƠNG 2: KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 20

2.1 Khảo sát hệ thống 20

2.1.1 Khảo sát tình hình thực tế 20

2.1.2 Bài toán đặt ra 28

2.1.3 Các chức năng chăm sóc 29

2.2 Đặc tả mô hình UML 30

2.3 Biểu đồ ca sử dụng (UseCase Diagram) 31

2.3.1 Biểu đồ Use Case tổng quát 31

2.3.2 Mô tả về biểu đồ Use Case 36

2.4 Thiết kế cơ sở dữ liêu 48

Trang 7

2.4.1 Giới thiệu về SQLite 48

2.4.2 Bảng trong cơ sở dữ liệu 48

CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG CHĂM SÓC SỨC KHỎE 50

3.1 Hướng dẫn cài đặt 50

3.1.1 Tải và cài đặt môi trường Java Runtime Environment (JRE) 50

3.1.2 Tải và cài đặt Android Studio 50

3.1.3 Tải và cài đặt Android SDK 50

3.1.4 Tải và cài đặt ADT plugin 50

3.1.5 Tải và cài đặt máy ảo Genymotion 50

3.1.6 Tải và cài đặt SQLite Manager 51

3.2 DEMO 51

KẾT LUẬN 61

TÀI LIỆU THAM KHẢO 62

Trang 8

DANH MỤC HÌNH ẢNH

Hình 1.1: Cấu trúc stack hệ thống Android 3

Hình 1.2: Vòng đời của một activity 7

Hình 1.3: Truyền dữ liệu dùng intent 8

Hình 1.4: Các phương thức gọi lại của một services 9

Hình 2.1: Thông tin về thai nhi 21

Hình 2.2: Lịch tiêm của mẹ trước khi mang thai 22

Hình 2.3: Duy trì tình trạng sức khoẻ và tinh thần 25

Hình 2.4: Mức biểu hiện tâm trạng phụ nữ sau khi sinh 25

Hình 2.5: Tâm lý của phụ nữ sau khi sinh 26

Hình 2.6: Chăm sóc dinh dưỡng cho bé từ 4 – 6 tháng tuổi 26

Hình 2.7 : Hướng dẫn bố mẹ theo dõi cân nặng của trẻ sơ sinh 27

Hình 2.8: Lịch tiêm dành cho trẻ sơ sinh 27

Hình 2.9: Biểu đồ Use case mức tổng quát 31

Hình 2.10: Mô hình kiến trúc 31

Hình 2.11: Biểu đồ hoạt động đăng xuất 32

Hình 2.12: Biểu đồ hoạt động đăng nhập 33

Hình 2.13: Biểu đồ hoạt động lịch tiêm 33

Hinh 2.14: Biểu đồ hoạt động cân nặng 34

Hình 2.15: Biểu đồ hoạt động đêm thai máy 34

Hình 2.16: Biểu đồ hoạt động khám thai 35

Hình 2.17: Biểu đồ hoạt động sức khỏe mẹ mang thai 35

Hình 2.18: Biểu đồ trình tự chức năng đăng ký 36

Hình 2.19: Biểu đồ trình tự chức năng đăng nhập 37

Hình 2.20: Biểu đồ trình tự chức năng sửa thông tin của mẹ 38

Hình 2.21: Biểu đồ trình tự chức năng ghi chú 39

Trang 9

Hình 2.22 : Biểu đồ trình tự chức năng quản lý nhắc nhở 40

Hình 2.23: Biểu đồ trình tự chức năng theo dõi sức khỏe thai nhi 41

Hình 2.24: Biểu đồ trình tự chức năng khám thai của mẹ 42

Hình 2.25: Biểu đồ trình tự chức năng các bệnh thương gặp 43

Hình 2.26: Biểu đồ trình tự chức năng lịch tiêm 44

Hình 2.27: Biểu đồ trình tự chức năng theo dõi cân nặng của trẻ 45

Hình 2.28: Biểu đồ trình tự chức năng theo dõi chiều cao của trẻ 46

Hình 2.29: Biểu đồ trình tự chức năng chế động dinh dưỡng của bé 47

Hình 2.30: Biểu đồ lớp 48

Hình 2.31: Bảng cơ sở dữ liệu 49

Hình 3.1 : Giao diện chính của chương trình 51

Hình 3.2: Đăng ký thông tin 52

Hình 3.3: Sửa thông tin của mẹ 53

Hình 3.4: Menu chính 54

Hình 3.5: Thông tin chi tiết ũi tiêm 55

Hình 3.6: Đếm thai máy 56

Hình 3.7: Chế độ dinh dưỡng của mẹ 57

Hình 3.8: Nhắc nhở của mẹ 58

Hình 3.9: Biểu đồ cân nặng 59

Hình 3.10: Thông tin chi tiết lịch khám thai 60

LỜI NÓI ĐẦU

Sự phát triển không ngừng của ngành công nghệ thông tin đã đem lại những đóng góp to lớn cho nhân loại, đã giải quyết được những khó khăn mà trước đây con người chưa giải quyết được.Đối với nước ta đang trong sự nghiệp công nghiệp hóa, hiện đại hóa đất nước, ngành công nghệ thông tin hứa hẹn sẽ có những bước tiến đang kể trong tương lai Đi cùng với sự phát triển của ngành công nghệ thông

Trang 10

tin là sự ra đời ngày càng nhiều thiết bị cầm tay, smartphone Nhu cầu của con người về việc sử dụng và giải trí trên các thiết bị di động cũng ngày càng cao và đa dạng.

Bên cạnh với sự phát triển của công nghệ, chất lượng cuộc sống của con người ngày càng tăng lên thì vấn đề sức khỏe ở con người đòi hỏi phải có những tiến bộ hơn, đặc biệt là sức khỏe của trẻ em – thế hệ được coi là mầm xanh của tương lai.Tuy nhiên, thực trạng thực tế đã cho ta thấy có nhiều vấn đề tiêu cực trong việc chăm sóc và chữa bệnh cho trẻ em, đặc biệt là vấn đề chăm sóc sức khỏe cho trẻ em

Xuất phát từ những vấn đến trên, em đã lựa chọn đề tài “Xây dựng ứng dụng hỗ trợ theo dõi chăm sóc sức khỏe trẻ em trên Android” để giúp cho việc

giải quyết các vấn đề trên trở nên tiện lợi, dễ dàng và chuyên nghiệp hơn

Mặc dù đã rất cố gắng hoàn thành đề tài nhưng chắc chắn sẽ không tránh khỏi những sai sót, em rất mong nhận được sự thông cảm , góp ý và tận tình chỉ bảo từ các thầy, cô

Cuối cùng em rất cám ơn cô Dương Thu Mây đã hướng dẫn chỉ bảo tận tình

để em có thể hoàn thành đề tài này

Em xin chân thành cảm ơn !

Sinh viên

Nguyễn Thị Lan

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Tổng quan về hệ điều hành android

1.1.1 Giới thiệu chung về hệ điều hành android

Android là một nền tảng mã nguồn mở toàn diện được thiết kế cho các thiết

Trang 11

bị di động Nó là sự liên minh giữa ông lớn Google và Open Handset Alliance –các tập đoàn sản xuất thiết bị cầm tay nổi tiếng như Intel, SamSung, Toshiba… Với mục tiêu là tăng tốc việc đổi mới trong di động và cung cấp cho người tiêu dung nhiều tiện ích phong phú, ít tốn kém Android chính là công cụ để làm điều đó.

Android là một nền tảng mã nguồn mở, toàn bộ ngăn xếp từ các module cấp thấp của Linux đến tất cả các thư viện gốc và tử các ứng dụng khung cho đến các ứng dụng hoàn chỉnh là hoàn toàn mở

Trong lịch sử phát triển, ban đầu Android thuộc sở hữu của công ty Android Inc Sau đó được Google mua lại vào năm 2005 và bắt đầu xây dựng Android Platform Cuối năm 2007 liên minh Open HandsetAlliance được thành lập và được công bố, Android chính thức trở thành mã nguồn mở Phiên bản đầu tiên được phát hành vào tháng 11 năm 2007

1.1.2 Máy ảo Dalvik trong Android

Dalvik là máy ảo giúp các ứng dụng java chạy được trên các thiết bị động Android Nó chạy các ứng dụng đã được chuyển đổi thành một file thực thi Dalvik (dex) Định dạng phù hợp cho các hệ thống mà thường bị hạn chế về bộ nhớ và tốc

độ xử lý Dalvik đã được thiết kế và viết bởi Dan Bornstein, người đã đặt tên cho

nó sau khi đến thăm một ngôi làng đánh cá nhỏ có tên là Dalvik

Từ góc nhìn của một nhà phát triển, Dalvik trông giống như máy ảo Java (Java Virtual Machine) nhưng thực tế thì hoàn toàn khác Khi nhà phát triển viết một ứng dụng dành cho Android, anh ta thực hiện các đoạn mã trong môi trường Java Sau đó, nó sẽ được biên dịch sang các bytecode của Java, tuy nhiên để thực thi được ứng dụng này trên Android thì nhà phát triển phải thực thi một công cụ có tên là dx Đây là công cụ dùng để chuyển đổi bytecode sang một dạng gọi là dex bytecode "Dex" là từ viết tắt của "Dalvik executable" đóng vai trò như cơ chế ảo thực thi các ứng dụng Android

1.1.3 Kiến trúc của android

Trang 12

Hình 1.1: Cấu trúc stack hệ thống Android

Tầng ứng dụng

Đây là lớp ứng dụng giao tiếp với người dùng, bao gồm các ứng dụng như:Các ứng dụng cơ bản được cài đặt đi liền với hệ điều hành như: gọi điện thoại (phone), quản lý danh bạ (contacts), duyệt web (browser), nhắn tin (sms), lịch làm việc (calendar), đọc email (email-client), bản đồ (map), quay phim chụp ảnh (camera)…

Các ứng dụng được cài thêm như các phần mềm (stock), các trò chơi (game), từ điển, …

Các chương trình có các đặc điểm là:

 Viết bằng Java, phần mở rộng là apk

Trang 13

 Khi mỗi ứng dụng được chạy, nó có phiên bản Virtual Machine được dựng lên phục vụ cho nó Nó có thể là một Active Program: chương trình có giao diện với người sử dụng hoặc là một background: chương trình chạy nền hay là dịch vụ.

 Android là hệ điều hành đa nhiệm, điều đó có nghĩa là trong cùng một thời điểm, có thể có nhiều chương trình chạy một lúc, tuy nhiên, với mỗi ứng dụng thì có duy nhất một thực thể (instance) được phép chạy mà thôi Điều đó có tác dụng hạn chế sự lạm dụng tài nguyên, giúp hệ thống hoạt động tốt hơn

 Các ứng dụng được gán số ID của người sử dụng nhằm phân định quyền hạn khi sử dụng tài nguyên, cấu hình phần cứng và hệ thống

Android là một hệ điều hành có tính mở, khác với nhiều hệ điều hành di động khác, android cho phép một ứng dụng của bên thứ ba được phép chạy nền

Application framework

Tầng này xây dựng bộ công cụ - các phần tử ở mức cao để các lập trình viên có thể nhanh chóng xây dựng ứng dụng Nó được viết bằng Java, có khả năng sử dụng chung để tiết kiệm tài nguyên

 XMPP Service: Cung cấp công cụ để liên lạc trong thời gian thực

 Location Manager: Cho phép xác định vị trí của điện thoại dựa vào hệ thống định vị toàn cầu GPS và Google Maps

 Window Manager: Quản lý việc xây dựng và hiển thị các giao diện người dùng cũng như tổ chức quản lý các giao diện giữa các ứng dụng

 Notication Manager: Quản lý việc hiển thị các thông báo ( như báo có

Trang 14

tin nhắn,có email mới….).

Library

Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều thành phần khác nhau trong hệ thống Android Điều này được thể hiện thông qua nền tảng ứng dụng Android Một số các thư viện cơ bản gồm:

 Hệ thống thư viện C : triển khai BSD-derived có nguồn gốc từ các hệ thống thư viện chuẩn C (libc), được sử dụng chỉ bởi hệ điều hành

 Media Libraries – Dựa trên gói Video OpenCORE; các thư viện hỗ trợ phát và ghi âm của các định dạng âm thanh và video phổ biến, cũng như các file hình ảnh tĩnh, bao gồm MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG

 Surface Manager – Quản lý việc truy xuất vào hệ thống hiển thị

 LibWebCore - Đây là thành phần để xem nội dung trên web, được

sử dụng để xây dựng phần mềm duyệt web (Android Browse) cũng như để các ứng dụng khác có thể nhúng vào Nó cực kỳ mạnh, hỗ trợ được nhiều công nghệ mạnh mẽ như HTML5, JavaScript, CSS, DOM, AJAX

 SGL – Các cơ sở công cụ đồ họa 2D

 3D libraries - Thực hiện dựa trên OpenGL ES 1.0 APIs; Thư viện sử dụng hoặc là tăng tốc phần cứng 3D (nếu có) hoặc bao gồm tối ưu hóa phần mềm 3D

 SQLite - Hệ cơ sở dữ liệu để các ứng dụng có thể sử dụng

Android Runtime

Phần này chứa các thư viện mà một chương trình viết bằng ngôn ngữ Java

có thể hoạt động Phần này có 2 bộ phận tương tự như mô hình chạy Java trên máy tính thường Thứ nhất là các thư viện lõi (Core Library) , chứa các lớp như JAVA IO, Collections, File Access Thứ hai là một máy ảo java (Dalvik Virtual Machine) Mặc dù cũng được viết từ ngôn ngữ Java nhưng một ứng dụng Java của hệ điều hành android không được chạy bằng JRE của Sun (nay là Oracle) (JVM) mà là chạy bằng máy ảo Dalvik do Google phát triển

Trang 15

Linux kernel

Hệ điều hành android được phát trển dựa trên hạt nhân linux, cụ thể là hạt nhân linux phiên bản 2.6, điều đó được thể hiện ở lớp dưới cùng này Tất cả mọi hoạt động của điện thoại muốn thi hành được thì đều được thực hiện ở mức cấp thấp ở lớp này bao gồm quản lý bộ nhớ (memory management), giao tiếp với phần cứng (driver model), thực hiện bảo mật (security), quản lý tiến trình (process)

 Bluetooth Driver : Điều khiển thiết bị phát và thu sóng Bluetooth

 USB driver : Quản lý hoạt động của các cổng giao tiếp USB

 Keypad driver : Điều khiển bàn phím

 Wifi Driver : Chịu trách nhiệm về việc thu phát sóng wifi

 Audio Driver : điều khiển các bộ thu phát âm thanh, giải mã các tính hiệu dạng audio thành tín hiệu số và ngược lại

 Binder IPC Driver : Chịu trách nhiệm về việc kết nối và liên lạc với mạng vô tuyến như CDMA, GSM, 3G, 4G, E để đảm bảo những chức năng truyền thông được thực hiện

 M-System Driver : Quản lý việc đọc ghi lên các thiết bị nhớ như thẻ

SD, flash

 Power Madagement : Giám sát việc tiêu thụ điện năng

1.1.4 Các thành phần cơ bản của ứng dụng Android

Activity

Activity chính là một cửa sổ chứa giao diện ứng dụng của bạn mà người

Trang 16

dùng có thể tương tác với nó Mỗi màn hình trên ứng dụng cả bạn sẽ là kế thừa của Activity Activity dùng các View để hiển thị giao diện ứng dụng người dùng và đáp ứng lại các yêu cầu từ người dùng Có 3 dạng Activity:

 Floating Activity: là dạng Activity nổi, có kích thước không phủ lấ toàn

lý các trạng thái vòng đời của Activity như sau:

 onCreate(): sự kiện này được gọi khi Activity được tạo lần đầu tiên Trong sự kiện này, bạn phải thực hiện những công việc như tạo giao diện, tải dữ liệu Sau sự kiện này là sự kiện onStart() được gọi

 onRestart(): sự kiện được gọi khi muốn khỏi động lại một activity đã bị Stop Sau sự kiện này luôn là sự kiện onStart() được gọi

 onStart(): sự kiện nà được gọi khi giao diện của Activity hiển thị trên màn hình thiết bị

 onResume(): sự kiện này được gọi khi Activity bắt đầu tương tác với người dùng

 onPause(): khi một Activity khác dành quyền hiển thị và trạng thái focus thì Activity hiện hành sẽ gọi sự kiện onPause()

 onStop(): sự kiện này được gọi khi Activity bị che khuất hoàn toàn bởi một Activity khác và Activity đó cũng dành được focus

Trang 17

Hình 1.2: Vòng đời của một activityKhi một Activity bị paused hoặc stopped, trạng thái của một Activity vẫn sẽ được giữ lại Điều này là đúng vì mỗi đối tượng Activity vẫn còn được giữ lại trong bộ nhớ khi nó bị paused hoặc stopped Tất cả các thông tin về Activity cũng như trạng thái của nó vẫn còn tồn tại trong Vì vậy, bất cứ thay đổi nào của người dùng đối với Activity vẫn được giữ lại khi nó trở lại trạng thái hoạt động hoặc chế

độ resume

Intent

Intent là cầu nối giữa các Activity trong ứng dụng android Intent chính là người đưa thư, giúp chúng ta triệu gọi cũng như truyền các dữ liệu cần thiết để thực hiện một Activity từ một Activity khác

Trang 18

Hình 1.3: Truyền dữ liệu dùng intent

Services

Các dịch vụ (services) là thành phần chạy nền và không có bất kỳ giao diện nào Chúng có thể thực hiện các hành động tương tự như các hoạt động, nhưng mà không có bất kỳ giao diện người dùng nào Dịch vụ là hữu ích với các hành động (actions) khi mà người dùng cùng một lúc muốn thực hiện trên màn hình nhiều actions Services có thể được sử dụng theo 2 cách:

+ Services có thể được bắt đầu và được phép hoạt động cho đến khi một người nào đó dừng Services lại hoặc Services tự ngắt Ở chế độ này, Services được bắt đầu bằng cách gọi Context.startService() và dừng bằng lệnh Context.stopService() Services có thể tự động ngắt bằng lệnh Service.stopSelf() hoặc Service.stopSelfResult() Chỉ cần một lệnh stopService() để ngừng Service lại cho dù lệnh startService() được gọi ra bao nhiêu lần

+ Service có thể được vận hành theo như đã được lập trình việc sử dụng một giao diện mà nó định nghĩa Người dùng thiết lập một đường truyền đến đối tượng Service mà Services sử dụng và sử dụng đường kết nối đó để thâm nhập vào Service Kết nối này được thâm nhập bằng cách gọi lệnh Context.bindService() và được đóng lại bằng cách gọi lệnh Context.unbindService() Nhiều người dùng có thể kết nối tới cùng một thiết bị Nếu Service vẫn chưa được khởi chạy, lệnh bindService() có thể tùy ý khởi động Services

Trang 19

Hai chế độ này thì không tách biệt toàn bộ Có thể kết nối với một Service

mà nó đã được bắt đầu với lệnh startService() Ví dụ, một Service nghe nhạc ở chế

độ nền có thể bắt đầu với lệnh startService() cùng với một đối tượng Intent mà định dạng được âm nhạc để chơi Sau đó, có thể là khi người sử dụng muốn kiểm soát trình chơi nhạc nhạc hoặc biết thêm thông tin về bài hát hiện tại đang chơi, thì

sẽ có một Activity tạo lập một đường truyền tới Service bằng cách gọi bindService() Trong trường hợp như thế này, stopService() sẽ không thực sự ngừng Service cho đến khi liên kết cuối cùng được đóng lại

Hình 1.4: Các phương thức gọi lại của một services

Content Providers

Content Providers là lớp trung gian chia sẻ dữ liệu giữa các ứng dụng Mặc

Trang 20

định, Android chạy mỗi ứng dụng trong một khuôn thử của riêng nó để tất cả dữ liệu thuộc về một ứng dụng hoàn toàn độc lập với các ứng dụng khác trong hệ thống Mặc dù một lượng nhỏ dữ liệu vẫn được trao đổi giữa các ứng dụng thông qua các Intent, content providers sẽ tốt hơn và thích hợp nhiều cho việc chia sẻ dữ liệu liên tục giữa các bộ dữ liệu lớn.

Hệ thống Android sử dụng cơ chế này vào mọi lúc Chẳng hạn như Content Providers ở đây trình bày tất cả các dữ liệu liên hệ của người dùng một cách đa dạng trên ứng dụng Settings Provider trình bày việc cài đặt các ứng dụng khác nhau trên hệ thống, bao gồm cả việc xây dựng ứng dụng Settings Media Store chịu trách nhiệm lưu trữ và chia sẻ các phương tiện khác nhau, chẳng hạn như ảnh

và âm nhạc trên các ứng dụng khác nhau

Content Providers là các giao diện tương đối đơn giản với các phương thức tiêu chuẩn như insert(), update(), delete(), and query() Các phương thức này giống như các phương thức chuẩn trong cơ sở dữ liệu

Broadcast Receivers

Broadcast Receivers (có thể gọi là Receiver) là một trong bốn loại thành phần trong ứng dụng Android Chức năng dùng để nhận các sự kiện mà các ứng dụng hoặc hệ thống phát đi

Trang 21

+ Ngay khi onReceive() kết thúc, hệ thống coi như receiver đã không còn hoạt động và có thể kill process chứa receiver này bất cứ lúc nào.

+ Tránh xử lý các code quá lâu trong onReceive()

+ Không có xử lý bất đồng bộ chờ callback trong Receiver ( cụ thể như hiển thị Dialog, kết nối các service…)

Trang 22

SQLite là một dạng CSDL tương tự MySQL, PostgreSQL,…Đặc điểm của SQLite là gọn, nhẹ, đơn giản Chương trình gồm 1 file duy nhất vỏn vẹn chưa đến 500kB, không cần cài đặt, không cần cấu hình hay khởi động mà nó có thể sử dụng ngay Dữ liệu database cũng được lưu ở một file duy nhất Không có khái niệm user, password hay quyền hạn trong SQLite database

Telephony

Telephony cũng làm một thành phần tương đối quan trọng trong hệ thống Android Nó cho phép người lập trình có thể lấy các thông tin của hệ thống như thông tin SIM, thông tin thiết bị, thông tin mạng…Ngoài ra, chúng ta cũng có thể cài đặt các thông số cho cho thiết bị nếu các thông số đó có thể thay đổi được Tất

cả những điều đó được được quản lý bởi một class Telephony Manager trong Android

1.2 Tổng quan về phân tích thế kế hướng đối tượng UML

1.2.1 Giới thiệu chung về UML

Ngôn ngữ mô hình hóa thống nhất (Unifield Modeling Language – UML) là một ngôn ngữ để biểu diễn mô hình theo hướng đối tượng được xây dựng bởi ba tác giả trên với mục đích là:

+ Mô hình hoá các hệ thống sử dụng các khái niệm hướng đối tượng

+ Thiết lập một kết nối từ nhận thức của con người đến các sự kiện cần mô hình hoá

+ Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp, có nhiều ràng buộc khác nhau

+ Tạo một ngôn ngữ mô hình hoá có thể sử dụng được bởi người và máy

Trang 23

UML tổ chức một mô hình thành một loạt các hướng nhìn, thể hiện các khía cạnh khác nhau của hệ thống Chỉ khi kết hợp tất cả các hướng nhìn lại với nhau, người ta mới co được một bức tranh trọn vẹn về hệ thống Một hướng nhìn không phải là một hình vẽ, nội dung của nó được miêu tả qua các biểu đồ, đây là những hình vẽ chứa đựng các phần tử mô hình hóa Một biểu đồ bình thường chỉ trình bày một phần nội dung của một hướng nhìn, và một hướng nhìn được định nghĩa với rất nhiều biểu đồ.

1.2.2 Các đặc điểm cơ bản của hệ thống hướng đối tượng

Lớp và đối tượng

 Lớp (Class) – Mẫu để xác định trường hợp hoặc các đối tượng cụ thể

 Đối tượng (Object) – Mô tả của một lớp

 Thuộc tính (Attributes) – Mô tả cho đối tượng

 Chức năng (Behaviors) – Xác định các đối tượng có thể làm gì

Phương thức và message

Phương thức (Method) thực hiện chức năng của đối tượng Tương tự như một hàm hoặc một thủ tục

Message được gửi khi một phương thức được kích hoạt

Tóm lược và ẩn thông tin

 Tóm lược: Kết hợp dữ liệu và quá trình thành một thực thể

 Ẩn thông tin: Chỉ có những thông tin cần thiết để sử dụng một module phần mềm mới được công bố cho người sử dụng

Thừa kế

 Các lớp super hoặc các lớp cơ bản là những lớp mở đầu của hệ thống phân cấp các lớp

 Các lớp con hoặc các lớp cụ thể được thừa kế từ các lớp này

 Các lớp con được thừa kế các thuộc tính và phương thức từ các lớp cao hơn trong hệ thông phân cấp lớp

Trang 24

Đa hình thái và liên kết động

 Đa hình thái: Một thông điệp có thể được giải thích khác nhau bởi các đối tượng khác nhau

 Liên kết động: Nhập vào chậm trễ hoặc lựa chọn phương pháp cho một đối tượng được thực hiện khi thời gian bắt đầu chạy

 Liên kết tĩnh: Loại của đối tượng được xác định tại thời điểm biên dịch



Trang 25

1.2.3 Ưu nhược điểm của phân tích thiết kế hướng đối tượng

 Khó tực hiện vì khó xác định đối tượng của hệ thống

1.3 Ứng dụng mô hình UML trong thiết kế ứng dụng Android

Xây dựng mô hình sử dụng ngôn ngữ UML đã giải quyết được các khó khăn trên Khi trở thành một chuẩn trong việc lập mô hình, mỗi kí hiệu mang một

ý nghĩa rõ ràng và duy nhất, một nhà phát triển có thể đọc được mô hình xây dựng bằng UML do một người khác viết

Những cấu trúc mà việc nắm bắt thông qua đọc mã lệnh là khó khăn nay đã

Trang 26

được thể hiện trực quan Một mô hình rõ ràng, sáng sủa làm tăng khả năng giao tiếp, trao đổi giữa các nhà phát triển.

Mục đích chính của UML là để xây dựng mô hình cho các hệ thống phần mềm, nó có thể được sử dụng một cách hiệu quả trong nhiều lĩnh vực như:

 Hệ thống thông tin doanh nghiệp (enterprise)

 Các ứng dụng phân tán dựa trên Web

UML không chỉ giới hạn trong lĩnh vực phần mềm Nó còn có thể dùng

để lập mô hình cho các hệ thống không phải là phần mềm như hệ thống pháp luật (luồng công việc – workflow), thiết kế phần cứng, …

1.3.2 Các biểu đồ

- Biểu đồ lớp (Class Diagram)

Bao gồm một tập hợp các lớp, các giao diện, các collaboration và mối quan hệ giữa chúng Nó thể hiện mặt tĩnh của hệ thống

- Biểu đồ đối tượng (Object Diagram)

Bao gồm một tập hợp các đối tượng và mối quan hệ giữa chúng Đối tượng là một thể hiện của lớp, biểu đồ đối tượng là một thể hiện của biều đồ lớp

- Biểu đồ Use case (Use Case Diagram)

Khái niệm actor: là những người, hệ thống khác ở bên ngoài phạm vi của

hệ thống mà có tương tác với hệ thống

- Biểu đồ Use case bao gồm một tập hợp các Use case, các actor và thể hiện mối quan hệ tương tác giữa actor và Use case Nó rất quan trọng trong việc tổ chức

Trang 27

và mô hình hóa hành vi của hệ thống

- Biểu đồ trình tự (Sequence Diagram)

Là một dạng biểu đồ tương tác (interaction), biểu diễn sự tương tác giữa các đối tượng theo thứ tự thời gian Nó mô tả các đối tượng liên quan trong một tình huống cụ thể và các bước tuần tự trong việc trao đổi các thông báo(message) giữa các đối tượng đó để thực hiện một chức năng nào đó của hệ thống

- Biểu đồ hợp tác (Collaboration)

Gần giống như biểu đồ Sequence, biểu đồ Collaboration là một cách khác để thể hiện một tình huống có thể xảy ra trong hệ thống Nhưng nó tập trung vào việc thể hiện việc trao đổi qua lại các thông báo giữa các đối tượng chứ không quan tâm đến thứ tự của các thông báo đó Có nghĩa là qua đó chúng ta sẽ biết được nhanh chóng giữa 2 đối tượng cụ thể nào đó có trao đổi những thông báo gì cho nhau

- Biểu đồ chuyển trạng thái (Statechart)

Chỉ ra một máy chuyển trạng, bao gồm các trạng thái, các bước chuyển trạng và các hoạt động Nó đặc biệt quan trọng trong việc mô hình hóa hành vi của một lớp giao diện(interface class) hay collaboration và nó nhấn mạnh vào các đáp ứng theo sự kiện của một đối tượng, điều này rất hữu ích khi mô hình hóa một hệ thống phản ứng(reactive)

- Biểu đồ hoạt động (Activity)

Là một dạng đặc biệt của biểu đồ chuyển trạng Nó chỉ ra luồng đi từ hoạt động này sang hoạt động khác trong một hệ thống Nó đặc biệt quan trọng trong việc xây dựng mô hình chức năng của hệ thống và nhấn mạnh tới việc chuyển đổi quyền kiểm soát giữa các đối tượng

- Biểu đồ thành phần (Component)

Chỉ ra cách tổ chức và sự phụ thuộc của các thành phần(component) Nó liên quan tới biểu đồ lớp, trong đó một thành phần thường ánh xạ tới một hay nhiều lớp, giao diện , collaboration

Trang 28

- Quan hệ Thừa kế (Generalization) chỉ ra cấu hình của hệ thống khi thực

đồ họa còn có các phát biểu bằng lời để chỉ rõ ngữ nghĩa của các kí hiệu đó

Trang 29

Trang Trí

Tất cả các phần tử trong UML đều có một hình dạng phân biệt đối với các phần tử khác Đồng thời chúng cũng được thiết kế để thể hiện những mặt quan trọng nhất của đối tượng Nói tóm lại các kí hiệu trong UML giúp ta nhận biết các đặc điểm quan trọng của đối tượng, khái niệm được mô tả một cách dễ dàng và nhanh chóng

Phân Chia

Phân biệt rõ phần trừu tượng và cụ thể

Trước tiên là lớp và đối tượng Một lớp là một sự trừu tượng hóa, một đối tượng là một thể hiện cụ thể của sự trừu tượng đó Trong UML ta có thể mô hình lớp và đối tượng

Có rất nhiều thứ tương tự Ví dụ như một Use case và một thể hiện của Use case, một component và một thể hiện của component

Kỹ Thuật Mở Rộng

UML cung cấp những thành phần cơ bản để lập nên một mô hình cho một phần mềm Nhưng nó không thể nào bao quát hết theo thời gian mọi mô hình trong mọi lĩnh vực Do đó UML được thiết kế mở theo nghĩa là người dùng có thể mở rộng một số thành phần để có thể áp dụng một cách tốt nhất cho hệ thống của họ

mà lại không phải thay đổi hay thiết kế lại các thành phần cơ sở của UML Cơ chế

đó bao gồm:

 Stereotypes (khuôn mẫu): mở rộng tập từ vựng của UML, cho phép

tạo những thành phần mới kế thừa những đặc điểm của những thành phần đã có đồng thời chứa thêm những đặc điểm riêng gắn với một bài toán cụ thể nào đó

 Tagged values (giá trị thẻ): mở rộng thuộc tính của các thành phần của

UML, nó cho phép ta tạo thêm những thông tin mới về một phần tử Ví dụ như khi làm việc hợp tác để tạo ra một sản phẩm, ta muốn chỉ ra các phiên bản và tác giả của một đối tượng nào đó Điều này không được xây dựng sẵn trong UML mà có

Trang 30

thể thực hiện thông qua việc thêm vào một giá trị thẻ.

 Constraints (ràng buộc): mở rộng ngữ nghĩa của các thành phần của

UML, cho phép tạo ra những quy tắc mới hoặc sửa chữa những quy tắc đã có

1.3.4 UML trong thiết kế ứng dụng Android

 Kiến trúc hệ thống

Khi xem xét một hệ thống, chúng ta cần xây dựng các mô hình từ những khía cạnh khác nhau, xuất phát từ thực tế là những người làm việc với hệ thống với những vai trò khác nhau sẽ nhìn hệ thống từ những khía cạnh khác nhau

UML xét hệ thống trên 5 khía cạnh:

Use-Case View

Bao gồm các Use Case mô tả ứng xử của hệ thống theo cách nhìn nhận của người dùng, người phân tích hệ thống Nó không chỉ ra cách cấu trúc của hệ thống phần mềm, nó chỉ dùng để nhìn nhận một cách tổng quát những gì mà hệ thống sẽ cung cấp, thông qua đó người dùng có thể kiểm tra xem các yêu cầu của mình đã được đáp ứng đầy đủ hay chưa hoặc có chức năng nào của hệ thống là không cần thiết Biểu đồ dùng đến là biểu đồ Use Case

Logical View

Trang 31

Được dùng để xem xét các phần tử bên trong hệ thống và mối quan hệ, sự tương tác giữa chúng để thực hiện các chức năng mong đợi của hệ thống.

Process View

Chia hệ thống thành các tiến trình(process) và luồng(thread), mô tả việc đồng bộ hóa và các xử lý đồng thời Dùng cho người phát triển và tích hợp hệ thống, bao gồm các biểu đồ sequence, collaboration, activity và state

Trang 32

Implementation View

Bao gồm các component và file tạo nên hệ thống vật lý Nó chỉ ra sự phụ thuộc giữa các thành phần này, cách kết hợp chúng lại với nhau để tạo ra một hệ thống thực thi

– Phân tích yêu cầu: Dùng phương pháp phân tích Use case để nắm bắt các

yêu cầu của khách hàng Đây là một bước quan trọng và sự thành công của bước này sẽ quyết định sự thành công của dự án Bởi vì một hệ thống dù có xây dựng tốt đến đâu nhưng không đáp ứng được những nhu cầu của khách hàng hệ thống sẽ thất bại

– Phân tích: Sau khi đã biết được người dùng muốn gì, chúng ta tập trung

mô tả lại hệ thống, các khái niệm chính trong lĩnh vực của hệ thống cần xây dựng, trong hướng đối tượng gọi là các lớp lĩnh vực ( domain class ), mối quan hệ và sự tương tác giữa các đối tượng đó Mục đích chính là hiểu hệ thống hoạt động như thế nào

– Thiết kế: ở bước này sử dụng kết quả thu được ở các bước trước để mở

rộng thành một giải pháp kỹ thuật, thêm vào các lớp thuộc về kỹ thuật như các lớp giao diện, các lớp điều khiển…Tập trung mô tả cấu trúc bên trong của hệ thống, sự tương tác của tập hợp các đối tượng để đạt được những chức năng mà hệ thống cần

Trang 34

Các bước phân tích thiết kế hướng đối tượng được hệ thống hóa như sau:

 Phân tích Use case :

 Xây dựng biểu đồ đối tượng

 Phân tích sự tương tác giữa các đối tượng

 Thêm vào các thuộc tính và phương thức cho các lớp

 Xác định ứng xử của đối tượng

 Xây dựng biểu đồ chuyển trạng

 Xây dựng biểu đồ hoạt động

 Xác định kiến trúc của hệ thống

Trang 35

 Xây dựng biểu đồ thành phần

 Xây dựng biểu đồ triển khai

 Kiểm tra lại mô hình

Trang 36

CHƯƠNG 2: KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1 Khảo sát hệ thống

2.1.1 Khảo sát tình hình thực tế

Chăm sóc mẹ khi mang thai là những chăm sóc sản khoa cho người phụ nữ tính từ thời điểm mang thai đến trước khi sinh nhằm đảm bảo cho quá trình mang thai được an toàn, sinh con khỏe mạnh

 Thời kỳ mang thai: thời kỳ mang thai các bà mẹ cần khám thai đầy đủ,

tiêm phòng uốn ván, bổ sung viên sắt Ngoài ra còn bao gồm giáo dục, điều trị những tình trạng bênh lý hoặc biến chứng xảy ra trong thời kỳ có thai, hướng dẫn

và xác định nơi sinh, giải thích những biến chứng có thể xảy ra, địa điểm khám và

xử trí để đảm bảo an toàn, chế độ dinh dưỡng, chế độ lao động và nghỉ ngơi, Chăm sóc phụ nữ trong thời kỳ mang thai có tầm quan trọng to lớn và cần thết để phát hiện kịp thời nguy cơ như thể trạng mẹ không đảm bảo, các bệnh lý của người mẹ có sẵn cũng như mới xuất hiện do thai nghén ví dụ thiếu máu, nhiễm độc, Chăm sóc thời kỳ này tốt sẽ giảm thiểu được tử vong và bệnh tật cho cả mẹ

Trang 37

mang thai người phụ nữ cần được khám thai định kỳ ít nhất 3 lần ở 3 quý của thai kỳ.

 Lịch siêu âm thai định kỳ

Từ tuần 12 -14 của thai kỳ: Đây là thời điểm bác sĩ siêu âm có thể xác

định tuổi thai một cách chính xác nhất Và điều quan trọng hơn của việc siêu

âm thai trong thời kỳ này là bác sĩ có thể đo khoảng sáng sau gáy nhằm dự đoán một số bất thường nhiễm sắc thể (những bất thường này có thể là nguyên nhân gây bệnh Down, dị dạng tim, chi, thoát vị cơ hoành…)

Từ tuần 21 – 24 của thai kỳ: Hầu hết các cơ quan bên trong thai nhi đều được bác sĩ siêu âm kiểm tra để đảm bảo thai phát triển bình thường Các cột sống, hộp sọ, não, tim, phổi, thận, cánh tay và chân của thai nhi ở thời kỳ này đều có thể được nhìn thấy

Từ tuần 30 – 32 của thai kỳ: Những bất thường xuất hiện muộn như bất thường ở động mạch, tim và một vùng cấu trúc não sẽ được bác sĩ siêu âm phát hiện ở thời điểm siêu âm này

Ngoài những lần khám thai theo quy định, các bà mẹ mang thai cần đi khám ngay khi có những dấu hiệu bất thường như đau đầu đữ dội,nhìn mờ, rối loạn thị lực, phù mặt,tay chân, co giật, thai cử động không bình thường,ra máu âm đạo, sốt cao,…

Trang 38

Hình 2.1: Thông tin về thai nhi

Bổ sung viên sắt

Thai phụ cần được uống liên tục mỗi ngày một viên trong suốt thời gian đến hết 6 tuần sau sinh Tối thiểu phải uống ít nhất trước sinh 90 ngày Việc cung cấp viên sắt cần được thực hiện ngay từ lần đầu khám thai đầu

Tiêm phòng uốn ván

Để phòng uốn ván cho bà mẹ và trẻ sơ sinh có 2 nội dung cần phải làm:

 Tiêm vaccine phòng uốn ván mũi thứ nhất từ tháng thứ 4 trở đi

 Cách mũi đầu ít nhất 1 tháng và chậm nhất là trước khi đẻ 1 tháng

Trang 39

Hình 2.2: Lịch tiêm của mẹ trước khi mang thai

Chế độ lao động, sinh hoạt và chế độ dinh dưỡng của các thai phụ

Quá trình mang thai là thời kỳ khó khăn đối với các bà mẹ, vì vậy các mẹ cần Có nhiều thời gian nghỉ ngơi, chăm sóc sức khỏe bản thân.Sức khỏe bà mẹ tốt thì thai mới phát triển tốt và khỏe mạnh Trong thời gian này, bà mẹ cần đượcc nghỉ ngơi nhiều, tránh lao động vất vả,…

 Làm việc theo khả năng, xen kẽ nghỉ ngơi, tránh làm những công việc nặng nhọc, tránh tiếp xúc với các chất độc hại, phóng xạ

 Nghỉ ngơi hoàn toàn trong tháng cuối

 Không thức khuya, dậy sớm,không làm việc quá khuya Đảm bảo mỗi ngày

 Chăm sóc trong sinh

Chuyển dạ là quá trình từ khi có dấu hiệu chuyển dạ (ra nhây hồng, đau

Trang 40

bụng, ra nước ối) đến khi thai và rau thai được đưa ra khỏi đường sinh dục của người mẹ Quá trình chuyển dạ cũng tiềm ẩn nhiều nguy cơ hay những biến chứng nguy hiểm có ảnh hưởng tới sức khỏe của bà mẹ và thai nhi Vì vậy bà mẹ cần được cung cấp kiến thức về những điều xảy ra trong quá trình chuyển dạ Một cuộc chuyển dạ sinh trung bình kéo dài 12 giờ Có rất nhiều nguy cơ cho cả mẹ va trẻ được sinh trong khi chuyển dạ Bên cạnh vẫn còn tồn tại nguy cơ do bệnh có sẵn trong quá trình mang thai Những dấu hiệu như chuyển dạ kéo dài mà chưa sinh(trên 12 giờ) nhiễm khuẩn ối, sốt cao, ngôi thai bất thường, co giật… Đó là những dấu hiệu nguy hiểm trong thời kỳ chuyển dạ cần được xử trí kịp thời tránh rủi ro không mong muốn cho thai phụ và thai nhi

 Chăm sóc sau sinh

Chăm sóc sau sinh là những chăm sóc cho bà mẹ bao gồm : chăm sóc giai đoạn sau sinh, kế hoạch hóa gia đình, phòng chống nhiễm trùng, vệ sinh, dinh dưỡng và cho con bú

Về mẹ :

Sức khoẻ sau sinh ảnh hưởng đến nguy cơ mắc bệnh, các chứng bệnh mãn tính của phụ nữ trong suốt cuộc đời mình, sức khoẻ ở những lần mang thai tiếp theo, việc thực hiện chức năng gia đình, hạnh phúc của con cái và những thành viên khác trong gia đình

Hầu hết phụ nữ trải qua nhiều cơn đau sau khi sinh, trong đó nhiều người có những cơn đau dai dẳng

58% phụ nữ sinh mổ cho rằng đau nhức vết mổ là một vấn đề trong 2 tháng đầu tiên sau sinh, với 19% nói rằng đó là vấn đề nghiêm trọng, và 16% nói rằng vấn đề này kéo dài dai dẳng đến ít nhất là 6 tháng

Những kiểu đau khác mà nhiều phụ nữ phải trải qua trong 2 tháng đầu tiên bao gồm đau nhức núm vú/ngực sưng đau (48%), đau lưng (46%), đau đầu thường xuyên (29%), và đau khi giao hợp (27%)

Các bệnh nhiễm trùng rất phổ biến sau khi sinh, đặc biệt là những phụ nữ

Ngày đăng: 09/12/2016, 01:21

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