Ngoài ra, hiện nay khi nhu cầu sử dụng trênthiết bị điện tử cá nhân cũng tăng lên đồng nghĩa với việc nên có thông tin trên 1 trangweb để đội ngũ y tế dễ dàng quản lý, thông tin tiêm chủ
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CÔNG NGHỆ SỐ
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌC
NGÀNH: CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI:
XÂY DỰNG WEBSITE QUẢN LÝ TIÊM CHỦNG CHO TRẺ EM
Trang 4NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN
Trang 5
NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN
Trang 6
lý cũng như kiểm kê, báo cáo sau này Ngoài ra, hiện nay khi nhu cầu sử dụng trênthiết bị điện tử cá nhân cũng tăng lên đồng nghĩa với việc nên có thông tin trên 1 trangweb để đội ngũ y tế dễ dàng quản lý, thông tin tiêm chủng được rõ ràng và chính xáchơn, tiện theo dõi, tra cứu chuyên về tiêm chủng Thông qua nhu cầu đó, em thực hiện
đồ án “Xây dựng website quản lý tiêm chủng cho trẻ em thành phố Đà Nẵng” nhằmphần nào giúp đội ngũ y tế dễ dàng hơn trong quá trình quản lý thông tin tiêm chủngcủa trẻ, tránh những thiếu sót không đáng có cũng như hỗ trợ phụ huynh quản lý thôngtin tiêm chủng của con dễ dàng, tiện lợi hơn
Về cấu trúc bài báo cáo ngoài các nội dung gồm phần mở đầu và kết thì có bố cụcgồm 3 chương:
CHƯƠNG I: TỔNG QUAN
Chương này tổng quan về đề tài đồ án, cơ cấu tổ chức và sơ lược về nghiệp vụ hệthống
CHƯƠNG II: CƠ SỞ LÝ THUYẾT
Chương này trình bày tổng quan về việc sử dụng các công nghệ hỗ trợ xây dựngwebsite, các công cụ thường xuyên sử dụng để xây dựng nền tảng cho bài toán Mô tảmột số công nghệ mới hỗ trợ phát triển website
CHƯƠNG III: PHÂN TÍCH THIẾT KẾ
Chương này trình bày một hướng tiếp cận trong việc phân tích hệ thống Trình bàynhững hướng chức năng cơ bản cho người dùng, sơ đồ cơ sở dữ liệu…
CHƯƠNG IV: DEMO CHƯƠNG TRÌNH
Chương này trình bày kết quả thực hiện chương trình, giao diện người dùng
Trang 7TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Giảng viên hướng dẫn: ThS Trần Bửu Dung
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Mã SV: 1811505310454
1 Tên đề tài: Xây dựng website Quản lý tiêm chủng cho trẻ em thành phố Đà
Nẵng.
2 Các số liệu, tài liệu ban đầu:
- Quy trình đăng ký tiêm, thực hiện tiêm
- Ngôn ngữ PHP, Laravel framework
3 Nội dung chính của đồ án:
Xây dựng Website quản lý tiêm chủng cho trẻ em thành phố Đà Nẵng, cho phépđội ngũ y tế quản lý thông tin tiêm chủng của trẻ một cách có hiệu quả, dễ tra cứu vàtruy xuất, tránh sai sót, mất mác, sai lệch thông tin sau này, đặc biệt là giảm tải lượng
hồ sơ cần lưu trữ, thuận tiện hơn trong việc báo cáo số liệu, đồng thời giúp việc quản
lý đối tượng tiêm chủng tại địa phương được tốt hơn, không bỏ sót các mũi tiêm củatrẻ Từ đó có thể vẽ ra phác đồ tỉ lệ tiêm chủng của trẻ em trên thành phố Đà Nẵng vàđưa ra những giải pháp tốt nhất Hỗ trợ phụ huynh quản lý thông tin, lịch trình tiêmchủng của con mình một cách rõ ràng và chi tiết, được đăng ký tiêm dịch vụ ngay trên
Trang 8LỜI CẢM ƠN
Ngày nay, công nghệ thông tin đã có những bước phát triển mạnh mẽ theo cả chiềurộng và sâu Máy tính và điện thoại thông minh không còn là thứ phương tiện quýhiếm mà đang ngày càng trở thành một công cụ làm việc và giải trí thông dụng củacon người, không chỉ ở công sở mà còn ngay cả trong gia đình, trường học
Đứng trước vai trò của thông tin hoạt động cạnh tranh gay gắt, các tổ chức và cácdoanh nghiệp đều tìm mọi biện pháp để xây dựng hoàn thiện hệ thống thông tin củamình nhằm tin học hóa các hoạt động tác nghiệp của đơn vị
Tại các cơ sở y tế vấn đề về quản lý thông tin tiêm chủng của trẻ em là một trongnhững vấn đề thiết thực và cấp bách cần được giải quyết Thực tế ở các trung tâm y tế,việc quản lý tiêm chủng hầu hết được thực hiện trên giấy tờ, sổ sách ghi chép lại mộtcách thủ công vì vậy việc áp dụng công nghệ thông tin, đưa các thiết bị điện tử vào hỗtrợ việc quản lý và theo dõi tiêm chủng là như cầu hết sức cần thiết, giúp đội ngũ quản
lý thu hẹp không gian lưu trữ, tra cứu tìm kiếm nhanh chóng với độ chính xác cao, tiếtkiệm được nhiều thời gian công sức không chỉ đối với người quản lý mà còn đối vớiphụ huynh
Xuất phát từ nhận thức trên, với mong muốn áp dụng công nghệ thông tin vào quản
lý, dựa trên những hoạt động thực tiễn em xin tìm hiểu và thực hiện đề tài “Xây dựngwebsite quản lý tiêm chủng cho trẻ em thành phố Đà Nẵng”, với các chức năng lưutrữ, xử lý thông tin về vaccine, hồ sơ cá nhân, phiếu đăng ký tiêm chủng và tình hìnhtin tức về y tế
Em chân thành cảm ơn sự chỉ bảo tận tình của cô Trần Bửu Dung đã giúp đỡ tậntình và cho em những kiến thức quý giá về lĩnh vực phân tích thiết kế hệ thống thôngtin
Đồng thời, em cũng cảm ơn sự giúp đỡ của các cô chú đội ngũ y tế tại địa phương
đã cung cấp cho em những thông tin hữu ích, quá trình hoạt động của việc tiêm chủng
em đang nghiên cứu để giúp em hoàn thành đồ án này
Trong quá trình làm đồ án, do kiến thức về phân tích thiết kế chưa sâu sắc nên đồ
án của em sẽ không tránh khỏi những sai sót Mong Thầy cô thông cảm và góp ý thêmcho em để đồ án được hoàn chỉnh hơn
Em xin chân thành cảm ơn!
Trang 9LỜI CAM ĐOAN
Tôi xin cam đoan:
1 Những nội dung trong luận văn này do em thực hiện dưới sự hướng dẫn của côTrần Bửu Dung
2 Mọi tham khảo trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên côngtrình ,thời gian,địa điểm công bố
3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, em xin chịuhoàn toàn trách nhiệm
Sinh viên thực hiện
Huỳnh Thị Thảo Vy
ii
Trang 10MỤC LỤC
NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN 3
NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN 4
TÓM TẮT 5
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 6
LỜI CẢM ƠN i
CAM ĐOAN ii
MỤC LỤC iii
DANH SÁCH CÁC BẢNG, HÌNH VẼ 1
MỞ ĐẦU 3
Chương 1: TỔNG QUAN 5
1.1 Lý do chọn đề tài 5
1.2 Mục đích đề tài 5
1.3 Phạm vi đề tài 5
1.4 Cơ cấu tổ chức 5
1.5 Hoạt động nghiệp vụ thực tế 6
1.6 Đặc tả yêu cầu nghiệp vụ (Business Requirments) 6
1.6.1 Khách vãng lai 6
1.6.2 Phụ huynh 6
1.6.3 Nhân viên y tế 6
1.6.4 Nhân viên trung tâm 6
1.6.5 Trạm y tế quận 7
Chương 2: CƠ SỞ LÝ THUYẾT 8
2.1 Hệ quản trị cơ sở dữ liệu MySQL Server 8
2.2 Ngôn ngữ lập trình 8
2.2.1 PHP 8
2.2.2 Framework Laravel 8
Chương 3: PHÂN TÍCH THIẾT KẾ 10
3.1 Đặc tả yêu cầu phần mềm (Software Requirements) 10
3.1.1 Khách vãng lai 10
3.1.2 Phụ huynh 10
3.1.3 Nhân viên y tế 10
3.1.4 Nhân viên trung tâm 11
Trang 113.1.6 Sơ đồ Use-case 12
3.2 Kịch bản cho Use-case 12
3.2.1 Actor Khách vãng lai 12
3.2.2 Actor Phụ huynh 13
3.2.3 Actor Nhân viên y tế 15
3.2.4 Actor Nhân viên trung tâm 19
3.2.5 Actor Trạm y tế quận 21
3.3 Phác thảo giao diện người dùng & Sơ đồ hoạt động 22
3.3.1 Actor Phụ huynh 22
3.3.2 Actor Nhân viên y tế 24
3.3.3 Actor Nhân viên trung tâm 32
3.3.4 Trạm y tế quận 35
3.4 Thiết kế cơ sở dữ liệu 37
3.4.1 Sơ đồ ERD 37
Chương 4: DEMO CHƯƠNG TRÌNH 42
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 48
TÀI LIỆU THAM KHẢO 49
PHỤ LỤC 50
iv
Trang 12DANH SÁCH CÁC BẢNG, HÌNH VẼ
Hình 3.1: Sơ đồ Use-case 17
Bảng 3.1 Kịch bản cho use-case tìm kiếm thông tin vaccine 18
Bảng 3.2 Kịch bản cho use-case đăng nhập 19
Bảng 3.3 Kịch bản cho use-case cập nhật thông tin tài khoản cá nhân 19
Bảng 3.4 Kịch bản cho use-case đăng ký lịch tiêm cho con 20
Bảng 3.5 Kịch bản cho use-case tạo hồ sơ cho trẻ 21
Bảng 3.6 Kịch bản cho use-case nhập các chỉ số trước và sau tiêm của trẻ 22
Bảng 3.7 Kịch bản cho use-case xác nhận mũi tiêm cho trẻ 23
Bảng 3.8 Kịch bản cho use-case thống kê tỉ lệ tiêm của trẻ 23
Bảng 3.9 Kịch bản cho use-case cập nhật thông tin vaccine 24
Bảng 3.10 Kịch bản cho use-caselập phiếu đăng ký tiêm theo yêu cầu 25
Bảng 3.11 Kịch bản cho use-case xác nhận phiếu đăng ký tiêm của phụ huynh 25
Bảng 3.12 Kịch bản cho use-case quản lý tài khoản người dùng 26
Hình 3.2: UI tạo hồ sơ cho trẻ 29
Hình 3.3: Sơ đồ hoạt động cho use-case tạo hồ sơ cho trẻ 30
Hình 3.4: UI nhập chỉ số trước và sau tiêm 31
Hình 3.5: Sơ đồ hoạt động cho use-case nhập chỉ số trước và sau tiêm 32
Hình 3.6: UI xác nhận mũi tiêm cho trẻ 33
Hình 3.7: Sơ đồ hoạt động cho use-case xác nhận mũi tiêm cho trẻ 34
Hình 3.8: UI cập nhật thông tin vaccine 35
Hình 3.9: Sơ đồ hoạt động cho use-case cập nhật thông tin vaccine 36
Hình 3.10: UI lập phiếu đăng ký theo yêu cầu 37
Hình 3.11: Sơ đồ hoạt động cho use-case lập phiếu đăng ký theo yêu cầu 38
Hình 3.12: UI xác nhận phiếu đăng ký của phụ huynh 38
Hình 3.13: UI xác nhận phiếu đăng ký của phụ huynh 39
Hình 3.14: UI quản lý tài khoản người dùng 40
Hình 3.15: Sơ đồ hoạt động cho use-case quản lý tài khoản người dùng 41
Hình 3.16: Sơ đồ ERD 42
Trang 13Bảng 3.14 Bảng childs 43
Bảng 3.15 Bảng objects 43
Bảng 3.16 Bảng production-batch 43
Bảng 3.17 Bảng disease 43
Bảng 3.18 Bảng staff-types 44
Bảng 3.19 Bảng district 44
Bảng 3.20 Bảng staffs 44
Bảng 3.21 Bảng vaccines 44
Bảng 3.22 Bảng register-for-injection 45
Bảng 3.23 Bảng injection-detail 45
Bảng 3.24 Bảng history-of-injections 46
Hình 4.1 Giao diện trang đăng nhập 47
Hình 4.2 Giao diện sau khi đăng nhập thành công 47
Hình 4.3 Giao diện trang quản lý thông tin vaccine 48
Hình 4.4 Giao diện trang thêm mới thông tin vaccine 48
Hình 4.5 Giao diện danh sách trẻ 49
Hình 4.6 Giao diện trang thêm mới thông tin trẻ 49
Hình 4.7 Giao diện danh sách phiếu đăng ký tiêm 50
Hình 4.8 Giao diện trang xác nhận đăng ký tiêm 50
Hình 4.9 Giao diện trang chủ 51
Hình 4.10.Giao diện trang đăng ký mũi tiêm cho con 52
Hình 4.11.Giao diện trang cập nhật tài khoản cá nhân 53
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 6
Trang 14MỞ ĐẦU
1 Mục tiêu đề tài:
Về kiến thức: Nắm vững và trình bày một cách hệ thống các cơ sở về kỹthuật phần mềm, về hệ quản trị cơ sở dữ liệu, cách tổ chức và hoạt động củamột ứng dụng quản lý
Về kỹ năng: Nắm vững và sử dụng thành thạo các công nghệ về lập trìnhứng dụng, tổ chức hệ quản trị cơ sở dữ liệu, hoàn thiện kỹ năng xây dựng giaodiện phù hợp với các đối tượng người dùng
Về kết quả: Xây dựng và thử nghiệm thành công website quản lý tiêmchủng cho trẻ em thành phố Đà Nẵng Các chức năng cơ bản của phần mềmgồm: đăng ký tiêm cho con dành cho phụ huynh được cấp tài khoản, cập nhật
hồ sơ trẻ, phụ huynh, nhân viên trong đội ngũ y tế, quản lý thông tin vaccine
2 Đối tượng nghiên cứu:
Website quản lý tiêm chủng cho trẻ em thành phố Đà Nẵng là hệ thốngdành cho đội ngũ y tế, phụ huynh đang công tác và lưu trú tại thành phố ĐàNẵng Hệ thống giúp đội ngũ y tế thực hiện việc quản lý thông tin tiêm chủngcủa trẻ, rút ngắn thời gian và bảo đảm chính xác thông tin Ngoài ra, hệ thốngcòn hỗ trợ phụ huynh quản lý thông tin tiêm chủng của con mình rõ ràng và tiệnlợi hơn so với xem sổ tay tiêm chủng, dễ dàng đăng ký tiêm ngoài dịch vụ và tựtham khảo bảng giá mọi lúc, mọi nơi
3 Phương pháp nghiên cứu:
Nghiên cứu lý thuyết: Tiến hành đi khảo sát thực tế tại trạm y tế phườngThanh Bình, tìm hiểu hoạt động thực tế của việc tiêm chủng và việc đăng kýcác mũi dịch vụ từ đội ngũ y tế, tìm hiểu thêm các tài liệu từ sách báo,internet Tham khảo một số nguồn hệ thống quản lý tiêm chủng hiện hành nhưVNVC
Nghiên cứu về công nghệ: Sử dụng ngôn ngữ lập trình PHP, hệ quản trị cơ
sở dữ liệu MySQL Ngôn ngữ PHP là một mã nguồn mở có tính năng động, có
sự phát triển của rất nhiều người, các thiết kế web sử dụng PHP cũng dễ dàng
và tốn ít thời gian hơn PHP sử dụng mã ít, có khả năng tùy chọn bộ nhớ khixây dựng, vì vậy kết quả việc thiết kế sẽ nhanh hơn Ngoài ra, xây dựng web có
sử dụng cơ sở dữ liệu là một nhu cầu tất yếu và PHP cũng đáp ứng rất tốt nhucầu này Với việc tích hợp sẵn nhiều Database Client trong PHP đã làm cho ứng
Trang 15dụng PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng như MySQL, MSSQL, Oracle, Cassandra…
Nghiên cứu về các công cụ: Thực hiện lập trình trên phần mềm ApacheNetbean IDE, xampp NetBeans IDE là công cụ cho phép người dùng có thểviết mã code miễn phí và được đánh giá tốt nhất tính đến hiện nay Bởi nó cungcấp nhiều tính năng cần thiết cho việc tạo ra các ứng dụng NetBeans IDE hoạtđộng tốt trên các hệ điều hành Windows, Linux, MacOS… và hỗ trợ đa dạngngôn ngữ lập trình Ngoài ra, NetBeans IDE còn hỗ trợ chức năng chỉnh sửa mãnguồn tự động, giao diện trực quan, dễ sử dụng và có thể xử lý các vấn đề lỗimạng từ xa
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 8
Trang 16CHƯƠNG 1: TỔNG QUAN1.1 Lý do chọn đề tài
Tỉ lệ trẻ em sinh ra ngày càng tăng nên nhu cầu quản lý thông tin trẻ trở nêncấp thiết để đảm bảo không để sót trẻ nào và tất cả trẻ đều được tiêm phòng đầy
đủ Cùng với đó, việc quản lý thông tin bằng sổ sách, giấy tờ thủ công như hiệnnay vẫn còn nhiều bất cập và sai sót, không có tính thống nhất
Hiện nay không còn mấy ai xa lạ với những sản phẩm và ứng dụng của côngnghệ thông tin - ngành khoa học và chúng đang trở thành một phần tất yếu trongcuộc sống hiện nay Cùng với sự phát triển không ngừng đó, những ứng dụng củacông nghệ thông tin trong việc quản lý nhân sự, quản lý nhà hàng, quản lý trườnghọc … đã và đang góp phần giảm thiểu được lượng chi phí đầu tư cho nguồnnhân công, đồng thời tăng tính hiệu quả chính xác trong việc khai thác và quản lý
Xây dựng 1 Website quản lý việc tiêm chủng cho trẻ em bước đầu hỗ trợ y
tế có thể tiếp cận công nghệ thông tin vào quá trình quản lý mang lại hiệu suấtcao hơn trong công việc, đảm bảo tính thống nhất và chính xác về thông tin củatrẻ Đồng thời giúp phụ huynh dễ dàng nắm bắt các thông tin về tiêm phòng trênthiết bị điện tử cá nhân
Trang 171.5 Hoạt động nghiệp vụ thực tế
Mỗi trẻ khi sinh ra được cấp 1 mã số gọi là mã tiêm chủng Dựa vào đó nhânviên y tế tiến hành tao hồ sơ cho trẻ bằng mã tiêm chủng và kèm theo là hồ sơphụ huynh Sau khi được cấp tài khoản, phụ huynh đăng nhập vào để cập nhậtthông tin cá nhân, xem các thông tin của y tế, lịch trình, vaccine, lịch sử tiêm củacon, đăng ký tiêm cho con, Nhân viên trung tâm có trách nhiệm tư vấn, kiểm trathông tin và xác nhận các phiếu đăng ký của phụ huynh Khi tiến hành tiêm kiểmtra thông tin dựa vào mã tiêm và kiểm tra sức khoẻ của trẻ
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 10
Trang 181.6 Đặc tả yêu cầu nghiệp vụ (Business Requirments)
1.6.1 Khách vãng lai
1.6.1.1 Được xem các thông tin chung bao gồm: vaccine, lịch trình tiêm, dịch vụ tiêm.1.6.1.2 Được tìm kiếm thông tin: vaccine, lịch tiêm
1.6.2 Phụ huynh
1.6.2.1 Cập nhật thông tin cá nhân và thông tin của con
1.6.2.2 Đăng ký tiêm vaccine cho con tại dich vụ Có thể gọi tới trung tâm đăng ký
trực tiếp hoặc đăng ký bằng phiếu trên web Sau đó bên y tế kiểm tra thông tinlại rồi xác nhận thì phiếu đăng ký mới có hiệu lực
1.6.3 Nhân viên y tế
1.6.3.1 Tạo hồ sơ cho trẻ dựa theo mã tiêm chủng được cấp khi trẻ sinh ra Trong hồ
sơ sẽ chứa thông tin phụ huynh để dễ quản lý
1.6.3.2 Nhập các chỉ số trước và sau tiêm của trẻ Nhân viên y tế kiểm tra tình trạng
trẻ trước tiêm sau đó nhập các chỉ số để tiến hành tiêm (nếu bất ổn thì hẹn lịchkhác đến tiêm sau) Lúc này trạng thái của mũi tiêm sẽ đổi thành “Đã kiểmtra”
1.6.3.3 Xác nhận mũi tiêm cho trẻ Sau khi tiêm xong nhân viên thay đổi tình trạng
phiếu tiêm từ “Đã kiểm tra” sang “Đã tiêm” tất cả thông tin sẽ được lưu vàobảng lịch sử tiêm
1.6.3.4 Gửi thông báo qua email cho phụ huynh khi lịch tiêm được sắp xếp
1.6.4 Nhân viên trung tâm
1.6.4.1 Nhập các chỉ số trước và sau tiêm của trẻ Nhân viên y tế kiểm tra tình trạng
trẻ trước tiêm sau đó nhập các chỉ số để tiến hành tiêm (nếu bất ổn thì cho vềhẹn lịch khác đến tiêm sau) Lúc này trạng thái của mũi tiêm sẽ đổi thành “Đãkiểm tra”
1.6.4.2 Xác nhận mũi tiêm cho trẻ Sau khi tiêm xong nhân viên thay đổi tình trạng
phiếu tiêm từ “Đã kiểm tra” sang “Đã tiêm” tất cả thông tin sẽ được lưu vàobảng lịch sử tiêm
1.6.4.3 Gửi thông báo qua email cho phụ huynh khi lịch tiêm được sắp xếp
1.6.4.4 Lập phiếu đăng ký tiêm khi được phụ huynh yêu cầu Phụ huynh cung cấp
thông tin cho nhân viên y tế, cả hai bên thảo luận về loại vaccine, mức giá, sau đó tiến hành tạo phiếu đăng ký
Trang 191.6.4.5 Xác nhận yêu cầu tiêm của phụ huynh Các phiếu tiêm đực phụ huynh đăng ký
trên web sẽ được nhân viên trung tâm kiểm tra lại, sau đó gọi lại xác nhận vớiphụ huynh để thống nhất loại vaccine phù hợp, lịch tiêm
1.6.5 Trạm y tế quận
1.6.5.1 Cập nhật thông tin vaccine Số vaccine trong kho sẽ được trạm cập nhật liên
tục từ số lượng, đơn giá, tính trạng,…
1.6.5.2 Quản lý tài khoản người dùng Có quyền thay đổi tính trạng hoạt động đối với
các người dùng (phụ huynh, nhân viên y tế, nhân viên trung tâm)
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 12
Trang 20CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Hệ quản trị cơ sở dữ liệu MySQL Server
MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới vàđược các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng VìMySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển,hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rấtmạnh Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng cótruy cập CSDL trên Internet MySQL miễn phí hoàn toàn cho nên bạn có thể tải
về MySQL từ trang chủ Nó có nhiều phiên bản cho các hệ điều hành khác nhau:phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix,FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS…
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệuquan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc
2.2 Ngôn ngữ lập trình
2.2.1 PHP
PHP - viết tắt hồi quy của "Hypertext Preprocessor", là một ngôn ngữ lậptrình kịch bản được chạy ở phía server nhằm sinh ra mã html trên client PHP đãtrải qua rất nhiều phiên bản và được tối ưu hóa cho các ứng dụng web, với cáchviết mã rõ rãng, tốc độ nhanh, dễ học nên PHP đã trở thành một ngôn ngữ lậptrình web rất phổ biến và được ưa chuộng
PHP chạy trên môi trường Webserver và lưu trữ dữ liệu thông qua hệ quản trị
cơ sở dữ liệu nên PHP thường đi kèm với Apache, MySQL và hệ điều hànhLinux (LAMP)
Apache là một phần mềm web server có nhiệm vụ tiếp nhận request từ trìnhduyệt người dùng sau đó chuyển giao cho PHP xử lý và gửi trả lại cho trìnhduyệt
MySQL cũng tương tự như các hệ quản trị cơ sở dữ liệu khác (Postgress,Oracle, SQL server ) đóng vai trò là nơi lưu trữ và truy vấn dữ liệu
Linux: Hệ điều hành mã nguồn mở được sử dụng rất rộng rãi cho cácwebserver Thông thường các phiên bản được sử dụng nhiều nhất là RedHatEnterprise Linux, Ubuntu
Trang 212.2.2 Framework Laravel
2.2.2.1 Giới thiệu
Laravel là một mã nguồn mở, là một framework dùng để xây dựng webapplication, được thiết kế dựa trên mô hình MVC (Model, Controller,View), toàn bộ source code được đặt trên github Theo kết qủa khảo sát củacác Developer vào tháng 12 năm 2013, thì Laravel Framework đứng top 1một trong những framework phổ biến nhất, tiếp sau là Phalcon, Symfony2,CodeIgniter và các framework khác Tháng 8 năm 2014, LaravelFramework được xem như là một dự án PHP phổ biến nhất trên GithubLaravel hiện đang là framework tốt nhất, đứng TOP 1 trong 3 năm liềntrên bảng xếp hạng các Framework tốt nhất Tại Việt Nam nhu cầu tuyểndụng ứng viên Laravel rất nhiều, nếu bạn có khả năng về LaravelFramework, bạn sẽ được các nhà tuyển dụng săn đón nồng nhiệt, đây sẽ là
cơ hội nghề nghiệp rất lớn dành cho bạn
2.2.2.2 Sơ lược tính năng cơ bản
Bundles: Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các
module, với rất nhiều tính năng đi kèm
Composer: Ở laravel phiên bản 4.x, được sử dụng như một công cụ quản lý
với tính năng như thêm các gói cài đặt, các chức năng PHP phụ trợ choLaravel có trong kho Packagist
Eloquent ORM (object relation mapping): ánh xạ các đối tượng và quan
hệ cơ sở dữ liệu, cung cấp các phương thức nội bộ để thực thi đồng thờicũng bổ sung các tính năng hạn chế về mối quan hệ giữa các đối tượng cơ sở
dữ liệu Eloquent ORM trình bày các bảng trong cơ sở dữ liệu dưới dạng cáclớp, cung cấp thêm lựa chọn truy cập cơ sở dữ liệu trực tiếp mới mẻ hơn,chuyên nghiệp hơn
Application logic: Là một phần của phát triển ứng dụng, được sử dụng bởi
bộ điều khiển controllers
Routes: Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết
(link) Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thìmột định danh liên kết thống nhất sẽ được tạo ra bởi laravel
Restful Controller: cung cấp các tùy chọn để tách các logic phía sau các
request HTTP POST, GET
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 14
Trang 22Class auto loading: cung cấp việc tải tự động các class trong PHP, mà
không cần include các class vào Tùy thuộc vào yêu cầu các class cần thiết
sẽ được nạp vào, hạn chế các class không cần thiết
View: chứa các mã html, hiển thị dữ liệu được chỉ định bởi controller
Migrations: cung cấp một hệ thống kiểm soát các phiên bản lược đồ cơ sở
dữ liệu (database schema), làm cho web ứng dụng có khả năng tương tácphù hợp những thay đổi logic, các đoạn mã code của ứng dụng và nhữngthay đổi cần thiết trong việc bố trí cơ sở dữ liệu, triển khai nới lỏng và cậpnhật các ứng dụng
Unit Testing: đóng một vai trò quan trọng trong Laravel, Unit testting chứa
rất nhiều các hệ thống unit testing, giúp phát hiện và ngăn chặn lỗi trongkhuôn khổ nhất định Unit Testing có thể được chạy thông qua tiện íchcommand-line
Automatic pagination: Tính năng tự động phân trang được tích hợp vào
Laravel giúp đơn giản hóa các nhiệm vụ thực hiện phân trang so với cácphương pháp thông thường
Trang 23CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ 3.1 Đặc tả yêu cầu phần mềm (Software Requirements)
3.1.2.4 Đăng ký lịch tiêm cho con
3.1.2.5 Cập nhật thông tin tài khoản cá nhân
3.1.2.6 Cập nhật thông tin con
3.1.3 Nhân viên y tế
3.1.3.1 Đăng nhập
3.1.3.2 Cập nhật thông tin tài khoản cá nhân
3.1.3.3 Tạo hồ sơ cho trẻ
3.1.3.4 Nhập các chỉ số trước và sau tiêm của trẻ
3.1.3.5 Xác nhận mũi tiêm cho trẻ
3.1.3.6 Xem thông tin:
Danh sách đăng ký tiêm chủng
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 16
Trang 24 Thông tin trẻ và cha mẹ
Lịch sử tiêm của trẻ
3.1.3.7 Thông báo qua SMS, Email cho phụ huynh khi đặt lịch hẹn
3.1.3.8 Thống kê tỉ lệ tiêm của trẻ
3.1.4 Nhân viên trung tâm
3.1.4.1 Đăng nhập
3.1.4.2 Cập nhật thông tin tài khoản cá nhân
3.1.4.3 Nhập các chỉ số trước và sau tiêm của trẻ
3.1.4.4 Xác nhận mũi tiêm cho trẻ
3.1.4.5 Xem thông tin:
Danh sách đăng ký tiêm chủng
Thông tin trẻ và cha mẹ
Lịch sử tiêm của trẻ
3.1.4.6 Lập phiếu đăng kí tiêm khi phụ huynh yêu cầu
3.1.4.7 Xác nhận phiếu đăng ký tiêm của phụ huynh
3.1.5 Trạm y tế quận
3.1.5.1 Đăng nhập
3.1.5.2 Cập nhật thông tin tài khoản cá nhân
3.1.5.3 Cập nhật thông tin vacxin
3.1.5.4 Xem thông tin:
Danh sách đăng ký tiêm chủng
Thông tin trẻ và cha mẹ
Lịch sử tiêm của trẻ
3.1.5.5 Thống kê tỉ lệ tiêm chủng từng phường
3.1.5.6 Quản lý tài khoản người dùng
Phụ huynh
Nhân viên y tế
Nhân viên trung tâm
Trang 25STT Use case name Tìm kiếm vaccine
1 Description Khách vãng lai muốn tìm xem thông tin vaccine
2 Actors Khách vãng lai
3 Input Khách vãng lai truy cập vào hệ thống và tìm kiếm thông
tin vaccine
4 Output Thông tin của vaccine mà khách vãng lai tìm kiếm
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 18
Trang 265 Basic flow Khách vãng lai (actor) vào trang vaccine
1) Bắt đầu use-case2) Actor Khách vãng lai nhập từ khoá vào ô search và
gõ tên vaccine muốn tìm kiếm3) Sau đó hiển thị ra thông tin của vaccine đó4) Kết thúc use case
của Basic flow)
1 Tìm kiếm không đúng tên vaccine
Bảng 3.1 Kịch bản cho use-case tìm kiếm thông tin vaccine
3.2.2 Actor Phụ huynh
3.2.2.1 Use-case đăng nhập
STT Use case name Đăng nhập
1 Description Phụ huynh muốn đăng nhập vào hệ thống
2 Actors Phụ huynh
3 Input Phụ huynh đăng nhập vào hệ thống bằng số chứng minh
nhân dân và mật khẩu đã thiết lập
4 Output Thông báo đăng nhập thành công
5 Basic flow Phụ huynh tìm kiếm ra trang tiêm chủng
1) Bắt đầu use case2) Actor Phụ huynh nhấn chọn vào button “Đăngnhập” để thực hiện đăng nhập
3) Nhập số chứng minh nhân dân và mạt khẩu vàoform đăng nhập
4) Actor chọn button “Đăng nhập” để hệ thống kiểmtra lượt đăng nhập và trả về kết quả
Trang 27Basic flow)
7 Exception flow
(Nêu các trường
hợp ngoại lệ
của Basic flow)
1 Nhập sai sô chứng minh nhân dân
2 Nhập sai mật khẩu
Bảng 3.2 Kịch bản cho use-case đăng nhập
3.2.2.2 Use-case cập nhật thông tin tài khoản cá nhân
STT Use case name Cập nhật thông tin tài khoản cá nhân
1 Description Phụ huynh muốn cập nhật thông tin cá nhân
2 Actors Phụ huynh
3 Input Phụ huynh đã đăng nhập bằng tài khoản thành công
Và chọn cập nhật thông tin
4 Output Hệ thống thông báo cập nhật thông tin thành công
5 Basic flow Sinh viên(actor) nhấn vào nút “Thay đổi thông tin” ở
phần thông tin cá nhân1) Bắt đầu use case2) Phụ huynh nhập những thay đổi về thông tin cánhân vào các ô cần thay đổi
3) Nhấn “Lưu” để lưu lại thông tin đã thay đổi4) Hệ thống kiểm tra và xuất thông báo thay đổithành công
của Basic flow)
1 Đăng nhập lỗi (hết phiên đăng nhập)
2 Những thông tin mang tính duy nhất bị trùng lặp(số điện thoại, số chứng minh nhân dân, email)
Bảng 3.3 Kịch bản cho use-case cập nhật thông tin tài khoản cá nhân
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 20
Trang 283.2.2.3 Use-case đăng ký lịch tiêm cho con
STT Use case name Đăng ký lịch tiêm cho con
8 Description Phụ huynh muốn đăng ký tiêm dịch vụ cho con
12 Basic flow Phụ huynh(actor) nhấn vào nút “Đăng ký tiêm dịch vụ” ở
phần menu đầu trang1) Bắt đầu use case2) Phụ huynh chọn trẻ muốn đăng ký tiêm (đối vớinhững phụ huynh có từ 2 con trở lên)
3) Phụ huynh chọn loại vaccine muốn đăng ký, chọnngày, mức giá
4) 3Nhấn “Đăng ký” để lư thông tin cho phiếu đăng
của Basic flow)
1 Đăng nhập lỗi (hết phiên đăng nhập)
2 Chọn loại vaccine không phù hợp với trẻ
3 Chọn ngày tiêm dự kiến nhỏ hơn ngày hiện tại
4 Chọn cùng 1 loại vaccine nhiều lần
Bảng 3.4 Kịch bản cho use-case đăng ký lịch tiêm cho con
Trang 293.2.3 Actor Nhân viên y tế
3.2.3.1 Use-case tạo hồ sơ cho trẻ
1 Use-Case Name Tạo hồ sơ cho trẻ
2 Description Nhân viên y tế sau khi nhận danh sách trẻ mới tiến hành
tạo hồ sơ dựa vào mã tiêm chủng của trẻ và thông tin củaphụ huynh
3 Actors Nhân viên y tế
4 Input Thông tin trẻ, thông tin phụ huynh
5 Output Thông báo tạo hồ sơ thành công
6 Basic flow 1 Actor Nhân viên y tế đăng nhập vào hệ thống
quản lý
2 Vào mục “Quản lý hồ sơ” => chọn mục “Trẻ em”
3 Chọn button “ Thêm mới” tại trang danh sách trẻđang quản lý
4 Nhập tất cả thông tin trẻ
5 Nhấn “Tạo mới” để tạo hồ sơ cho trẻ
6 Hệ thống kiểm tra và xuất thông báo tạo hồ sơthành công
Bảng 3.5 Kịch bản cho use-case tạo hồ sơ cho trẻ
3.2.3.2 Use-case Nhập chỉ số trước và sau tiêm của trẻ
1 Use-Case Name Nhập chỉ số trước và sau tiêm của trẻ
2 Description Nhân viên y tế tiến hành kiểm tra và nhập các chỉ số cơ
thể trẻ vào phiếu tiêm, thay đổi tính trạng phiếu tiêm đó thành “Đã kiểm tra” để chuyển phiếu đến khu vực tiêm
3 Actors Nhân viên y tế
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 22
Trang 304 Input Phiếu tiêm đã được xác nhận, chi tiết mũi tiêm đăng ký
5 Output Thông báo mũi tiêm được cập nhật trạng thái “Đã kiểm
tra”
6 Basic flow 1 Actor Nhân viên y tế đăng nhập vào hệ thống
2 Vào mục “Quản lý phiếu tiêm”
1 Đăng nhập lỗi (hết phiên đăng nhập)
2 Mã tiêm trong sổ không khớp với mã tiêm trên hệthống
3 Không đủ điền kiện về sức khoẻ -> không đượctiêm
Bảng 3.6 Kịch bản cho use-case nhập các chỉ số trước và sau tiêm của trẻ
3.2.3.3 Use-case Xác nhận mũi tiêm cho trẻ
1 Use-Case Name Xác nhận mũi tiêm cho trẻ
2 Description Nhân viên y tế tiêm cho trẻ và nhấn xác nhận vào chi tiết
mũi tiêm tính trạng “Đã tiêm”
3 Actors Nhân viên y tế
4 Input Phiếu tiêm với tính trạng “Đã xác nhận”, chi tiết mũi
tiêm với tính trạng “Đã kiểm tra”
5 Output Cập nhật tình trạng chi tiết mũi tiêm, chi tết mũi tiêm
được lưu vào bảng lịch sử tiêm của trẻ
6 Basic flow 1 Actor Nhân viên y tế đăng nhập vào hệ thống
2 Vào mục “Quản lý phiếu tiêm”
3 Chọn mục “Thực hiện tiêm”
4 Chọn tab “Đã kiểm tra” để xem thông tin và tiêm cho những trẻ đã được kiểm tra
Trang 311 Đăng nhập lỗi (hết phiên đăng nhập)
Bảng 3.7 Kịch bản cho use-case xác nhận mũi tiêm cho trẻ
3.2.3.4 Use-case Thống kê tỉ lệ tiêm của trẻ
1 Use-Case Name Thống kê tỉ lệ tiêm của trẻ
2 Description Nhân viên y tế dựa vào thông tin tiêm chủng đang quản
lý tiến hành lập báo cáo về tỉ lệ tiêm chủng của khu vực đó
3 Actors Nhân viên y tế
4 Input Phiếu tiêm đã được xác nhận, chi tiết mũi tiêm đăng ký
5 Output Danh sách thống kê, file báo cáo
6 Basic flow 1 Actor Nhân viên y tế đăng nhập vào hệ thống
1 Đăng nhập lỗi (hết phiên đăng nhập)
Bảng 3.8 Kịch bản cho use-case thống kê tỉ lệ tiêm của trẻ
3.2.3.5 Use-case cập nhật thông tin vaccine
1 Use-Case
Name Cập nhật thông tin vaccine
Sinh viên thực hiện: Huỳnh Thị Thảo Vy Người hướng dẫn: ThS Trần Bửu Dung Trang 24