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

báo cáo bài tập lớn xây dựng hệ thống quản lý lịch khám cho nha khoa g12

90 0 0
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

Nội dung

Ngoài ra, JDBC cũng cho phép người dùng có thể thực hiện các thao tác truy xuất, update các dữ liệu với cơ sở dữ liệu thông qua việc sử dụng các câu lệnh SQL.JDBC được phát hành tương tự

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘIKHOA CÔNG NGHỆ THÔNG TIN

THỰC TẬP CHUYÊN NGÀNHBÁO CÁO BÀI TẬP LỚN

ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ LỊCH KHÁM CHO NHA KHOA G12

GVHD : TS Nguyễn Thị Mỹ BìnhLớp : 20232IT6041004

Nhóm : 12

Thành viên : Cao Văn Thành – 2021607126Bùi Đình Cường – 2021608308Hoàng Tuấn Linh – 2021607036Hồ Ngọc Quyền – 2021606643Trần Văn Lộc – 2021605411

Trang 2

MỞ ĐẦU

1 Lý do chọn đề tài

Trong thời đại công nghệ số phát triển như hiện nay, các hoạt động quản lý và dịch vụ y tế đang ngày càng trở nên phức tạp và đòi hỏi sự hiệu quả cao Việc xây dựng một website quản lý phòng khám đã trở thành một lựa chọn tuyệt vời để cải thiện hoạt động của các cơ sở y tế và mang lại trải nghiệm tốt hơn cho bệnh nhân Một trong những lý do quan trọng nhất khi chọn đề tài xây dựng website quản lý phòng khám là sự tiện lợi và hiệu quả trong quản lý Với một website quản lý, các phòng khám có thể dễ dàng theo dõi lịch hẹn, quản lý thông tin bệnh nhân, lưu trữ hồ sơ y tế và quản lý thuốc Điều này giúp tiết kiệm thời gian, giảm thiểu sai sót và nâng cao hiệu suất làm việc của nhân viên y tế

Ngoài ra, việc xây dựng một website quản lý phòng khám còn mang lại nhiều lợi ích cho cả bệnh nhân và nhân viên y tế Bệnh nhân có thể đặt lịch hẹn trực tuyến, tra cứu thông tin cá nhân và nhận thông báo nhắc lịch hẹn Nhân viên y tế có thể dễ dàng truy cập và cập nhật thông tin bệnh nhân, theo dõi tiến trình điều trị và đảm bảo việc chăm sóc bệnh nhân được thực hiện một cách liên tục và hiệu quả

Bên cạnh đó, sử dụng các công nghệ kỹ thuật số trong quản lý phòng khám còn giúp tối ưu hóa hoạt động kinh doanh, tăng cường khả năng tiếp cận và quảng bá dịch vụ y tế, thu hút thêm bệnh nhân và cải thiện chất lượng dịch vụ Việc sử dụng các công cụ phân tích dữ liệu cũng giúp phòng khám đánh giá hiệu quả của các chiến dịch quảng cáo và đưa ra những quyết định kịp thời, chính xác

Trong bối cảnh thị trường y tế ngày càng cạnh tranh gay gắt, việc sở hữu một website quản lý phòng khám chính là yếu tố quan trọng giúp các cơ sở y tế phát triển và đạt được thành công Do đó, nhóm chúng tôi quyết định chọn đề tài xây dựng website quản lý phòng khám với mong muốn tạo ra một giải pháp quản lý tiên tiến, hiệu quả và tiện lợi cho cả bệnh nhân và nhân viên y tế

2 Đối tượng và phạm vi nghiên cứu - Mô hình MVC

- Ngôn ngữ: Java, JavaScript

Trang 3

- Công cụ: Eclipse, Case Studio 2, Rational Rose, Balsamiq Mockup, MySql Workbench

3 Kết quả mong muốn

- Dự án đạt tiêu chuẩn đầu ra - Giao diện thân thiện, đẹp mắt

- Chức năng thông minh, dễ dàng sử dụng 4 Cấu trúc bài báo cáo

Nội dung bài báo cáo chia thành 3 chương: - Chương 1: Tổng quan về cơ sở lý thuyết

- Chương 2: Khảo sát, phân tích và thiết kế hệ thống - Chương 3: Cài đặt và kiểm thử

Trang 4

2.1.1.1 Yêu cầu chức năng 15

2.1.1.2 Yêu cầu phi chức năng 15

2.2 Mô hình hóa cơ sở dữ liệu 16

2.2.1 Yêu cầu về dữ liệu 16

2.2.2 Biểu đồ thực thể liên kết mức logic 16

2.2.3 Mô hình cơ sở dữ liệu mức vật lý 17

2.4.2.1 Sơ đồ UseCase tổng quan 21

2.4.2.3 Sơ đồ phân rã UseCase 22

2.3.3 Mô tả UseCase 27

2.3.3.1 Mô tả UseCase Đăng nhập 27

Trang 5

3.1.2 Giao diện admin sau đăng nhập 80

3.2.Kiểm thử 86

3.2.1 Kiểm thử chức năng đăng nhập 86

3.2.2 Kiểm thử chức năng đặt lịch khám 87

3.2.3 Kiểm thử chức năng xóa lịch khám 87

3.2.4 Kiểm thử chức năng quản lý dịch vụ 88

3.2.5 Kiểm thử chức năng quản lý lịch khám 89

3.2.6 Kiểm thử chức năng quản lý phòng 89

3.2.7 Kiểm thử chức năng quản lý người dùng 89

Trang 6

Hình 2.9 Sơ đồ tổng quan các UseCase 19

Hình 2.10 Biểu đồ phân rã UseCase “QuanLyNguoiDung” 20

Hình 2.11Biểu đồ phân rã UseCase “QuanLyThucThi” 20

Hình 2.12 Biểu đồ phân rã UseCase “BaoCaoThongKe” 20

Hình 2.13 Biểu đồ phân rã UseCase “QuanLyDichVu” 21

Hình 2.14 Biểu đồ phân rã UseCase “QuanLyLichKham” 21

Hình 2.15 Biểu đồ phân rã UseCase “QuanLyPhong” 21

Hình 2.16 Biểu đồ phân rã UseCase “QuanLyTaiKhoan” 22

Hình 2.17 Biểu đồ phân rã UseCase “CapNhatThongTin” 22

Hình 2.18 Biểu đồ phân rã UseCase “DangNhap” 22

Hình 2.19 Biểu đồ phân rã UseCase “XemLichLamViec” 22

Hình 2.20Biểu đồ phân rã UseCase “CapNhatThongTin” 23

Hình 2.21 Biểu đồ phân rã UseCase “DangKy” khách hàng 23

Hình 2.22 Biểu đồ phân rã UseCase “DangNhap” khách hàng 23

Hình 2.23Biểu đồ phân rã UseCase “DatLichKham” 23

Hình 2.24 Biểu đồ phân rã UseCase “XemLichKham” 23

Hình 2.25Biểu đồ phân rã UseCase “XoaLichKham” 24

Hình 2.26 Biểu đồ trình tự UseCase “Đăng nhập” 36

Hình 2.27 Biểu đồ lớp phân tích “Đăng nhập” 37

Hình 2.28Biểu đồ trình tự UseCase “Đăng ký” 38

Hình 2.29 Biểu đồ lớp phân tích UseCase “Đăng ký” 38

Hình 2.30 Biểu đồ trình tự UseCase “Cập nhật thông tin” 39

Hình 2.31Biểu đồ lớp UseCase “Cập nhật thông tin” 40

Hình 2.32Biểu đồ trình tự UseCase “Đặt lịch khám 40

Trang 7

Hình 2.31 Biểu đồ trình tự UseCase “Xem lịch khám” 42

Hình 2.32 Biểu đồ lớp UseCase “Xem lịch khám” 42

Hình 2.33 Biểu đồ trình tự UseCase “Xóa lịch khám” 43

Hình 2.34 Biểu đồ lớp UseCase “Xóa lịch khám” 44

Hình 2.35 Biểu đồ trình tự UseCase “Xem lịch làm việc” 44

Hình 2.36 Biểu đồ lớp UseCase “Xem lịch làm việc” 45

Hình 2.37 Biểu đồ trình tự UseCase “Quản lý dịch vụ” 46

Hình 2.38 Biểu đồ lớp UseCase “Quản lý dịch vụ” 47

Hình 2.39 Biểu đồ trình tự UseCase “Quản lý lịch khám” 48

Hình 2.40 Biểu đồ lớp UseCase “Quản lý lịch khám” 49

Hình 2.41 Biểu đồ trình tự UseCase “Quản lý người dùng” 50

Hình 2.42 Biểu đồ lớp UseCase “Quản lý người dùng” 51

Hình 2.43 Biểu đồ trình tự UseCase “Quản lý thực thi” 52

Hình 2.44 Biểu đồ lớp UseCase “Quản lý thực thi” 53

Hình 3.2 Giao diện trang chủ admin (Mặc định là danh mục dashboard) 71

Hình 3.3 Giao diện lịch sử làm việc 72

Hình 3.4 Giao diện quản lý người sử dụng là quản lý, nha sĩ 72

Hình 3.5 Giao diện biểu đồ số lần đăng nhập của người dùng 73

Hình 3.6 Giao diện danh sách tài khoản người dùng đã xóa 73

Hình 3.7 Giao diện quản lý dịch vụ 74

Hình 3.8 Giao diện thùng rác dịch vụ 74

Hình 3.9 Giao diện quản lý khách hàng 75

Hình 3.10 Giao diện tài khoản khách hàng bị vô hiệu hóa 75

Hình 3.11 Giao diện quản lý lịch khám dạng danh sách 76

Hình 3.12 Giao diện quản lý lịch khám dạng lưới 76

Hình 3.13 Giao diện biểu đồ lịch khám 77

Trang 8

DANH MỤC BẢNG BIỂU

Bảng 1 1 Các UseCase có trong hệ thống 21

Bảng 3.1 Kiểm thử chức năng đăng nhập 88

Bảng 3.2 Kiểm thử chức năng đặt lịch khám 88

Bảng 3.3 Kiểm thử chức năng xóa lịch khám 89

Bảng 3.4 Kiểm thử chức năng quản lý dịch vụ 89

Bảng 3.5 Kiểm thử chức năng quản lý lịch khám 90

Bảng 3.6 Kiểm thử chức năng quản lý phòng 90

Bảng 3.7 Kiểm thử chức năng quản lý người dùng 91

Trang 9

CHƯƠNG I: TỔNG QUAN CƠ SỞ LÝ THUYẾT

Hình 1 1 Mô hình thác nước

Các giai đoạn trong quy trình thác nước gồm:

- Thu thập và phân tích yêu cầu (Requirement Analysis): Các yêu cầu được ghi lại trong giai đoạn này.

- Thiết kế hệ thống (System Design): Xác định các yêu cầu phần cứng và kiến trúc tổng thể.

- Thực hiện (Implementation): Mỗi đơn vị được phát triển và kiểm tra chức năng của nó.

- Tích hợp và Kiểm thử (Integration and Testing): Tất cả các đơn vị được tích hợp vào một hệ thống và toàn hệ thống được kiểm tra lỗi.- Triển khai hệ thống (Deployment of system): Sản phẩm được triển

khai trong môi trường khách hàng/thị trường.

Trang 10

- Bảo trì (Maintenance): Bảo trì được thực hiện để mang lại những thay đổi tích cực.

Ưu điểm và nhược điểm của mô hình quy trình thác nước:

● Ưu điểm :

- Đơn giản, dễ hiểu và dễ sử dụng

- Mỗi giai đoạn có các phân phối cụ thể và một quy trình xem xét- Các giai đoạn được xử lý và hoàn thành cùng một lúc

- Các giai đoạn được xác định rõ ràng- Các mốc quan trọng được hiểu rõ- Dễ dàng sắp xếp các công việc

- Quá trình và kết quả được ghi chép đầy đủ

● Nhược điểm:

- Lượng rủi ro cao và không chắc chắn

- Rất khó để đo lường sự tiến bộ trong các giai đoạn- Không thể đáp ứng các yêu cầu thay đổi

- Không phải là mô hình tốt cho các dự án phức tạp và hướng đối tượng

1.2.Kiến trúc phần mềm, mô hình lập trình

Kiến trúc phần mềm là tập hợp các cấu trúc cần thiết để lập trình nên hệ thống phần mềm, bao gồm các phần tử, mối quan hệ giữa chúng và các thuộc tính của chúng

Kiến trúc phần mềm cung cấp một nền tảng vững chắc để Software Engineer xây dựng nên phần mềm Mỗi dự án phần mềm sẽ có một bản tóm tắt, và kiến trúc phần mềm là bước đầu tiên để thực hiện bản tóm tắt đó Kiến trúc và thiết kế phần mềm bao gồm một số yếu tố như: Chiến lược kinh doanh, thuộc tính chất lượng, nhân lực, thiết kế và môi trường CNTT.

Trang 11

Hình 1 2 Kiến trúc phần mềm

Mục tiêu chính của kiến trúc là xác định các yêu cầu ảnh hưởng đến cấu trúc của ứng dụng Một kiến trúc được bố trí hợp lý giúp giảm rủi ro kinh doanh liên quan đến việc xây dựng giải pháp kỹ thuật và xây dựng cầu nối giữa yêu cầu kinh doanh và kỹ thuật.

Một số mục tiêu khác của kiến trúc phần mềm có thể kể đến như sau:

● Phơi bày cấu trúc của hệ thống, nhưng ẩn các chi tiết triển khai của nó

● Nhận ra tất cả các trường hợp sử dụng và tình huống

● Cố gắng giải quyết các yêu cầu của các bên liên quan khác nhau

● Xử lý cả các yêu cầu về chức năng và chất lượng

● Giảm mục tiêu sở hữu và nâng cao vị thế thị trường của tổ chức

● Cải thiện chất lượng và chức năng do hệ thống cung cấp

Mối quan hệ giữa kiến trúc phần mềm và thiết kế phần mềm: Kiến trúc phần mềm thể hiện cấu trúc của một hệ thống trong khi các chi tiết triển khai bị ẩn đi Kiến trúc cũng tập trung vào cách các yếu tố và thành phần trong hệ thống tương tác với nhau Thiết kế phần mềm đi sâu hơn vào các chi tiết triển khai của hệ thống Mối quan tâm về thiết kế bao gồm việc lựa chọn cấu trúc dữ liệu và thuật toán hoặc chi tiết triển khai của các thành phần riêng lẻ.

Trang 12

Vai trò của kiến trúc phần mềm: Kiến trúc đóng vai trò như bản thiết kế cho một hệ thống Nó cung cấp một cái nhìn tổng thể để quản lý độ phức tạp của hệ thống, thiết lập một cơ chế giao tiếp và phối hợp giữa các thành phần.

Một số vai trò chính của kiến trúc phần mềm bao gồm:

● Giúp các bên liên quan hình dung, hiểu và phân tích hệ thống

● Kiến trúc phần mềm giúp phác họa cấu trúc của phần mềm

● Nó có thể được sử dụng để dự trù kinh phí trong một dự án trước khi chúng được thực hiện

● Nó được sử dụng làm cơ sở để đưa ra các quyết định cốt lõi nhằm đảm bảo chất lượng công việc

Các mẫu kiến trúc phần mềm phổ biến:

1 Mô hình phân lớp: Các thành phần trong mô hình kiến trúc phần mềm được tách thành các lớp nhiệm vụ con và chúng được sắp xếp chồng lên nhau Mỗi lớp có các nhiệm vụ duy nhất để thực hiện và tất cả các lớp đều độc lập với nhau Vì mỗi lớp đều độc lập nên người ta có thể sửa đổi mã bên trong một lớp mà không ảnh hưởng đến các lớp khác

2 Mô hình Client – Server: Mô hình này có hai thực thể chính: một máy chủ và nhiều máy khách Ở đây máy chủ có tài nguyên (dữ liệu, tệp hoặc dịch vụ) và máy khách yêu cầu máy chủ cung cấp một tài nguyên cụ thể Sau đó, máy chủ xử lý yêu cầu và phản hồi lại tương ứng

3 Mô hình Event – Driven: Khi người dùng thực hiện hành động trong ứng dụng được xây dựng bằng cách tiếp cận EDA (Exploratory Data Analysis – Phân tích Khám phá Dữ liệu), sự thay đổi trạng thái sẽ xảy ra và phản ứng được tạo ra được gọi là sự kiện

4 Mô hình Microkernel: có hai thành phần chính: một hệ thống cốt lõi và các mô-đun (Module) plug-in.Hệ thống cốt lõi xử lý các hoạt động cơ bản của ứng dụng.Các mô-đun plug-in xử lý các chức năng mở rộng (như các tính năng bổ sung) và xử lý tùy chỉnh

Trang 13

5 Mô hình Microservices: là tập hợp các dịch vụ nhỏ được kết hợp để tạo thành ứng dụng thực tế Thay vì xây dựng một ứng dụng lớn hơn, các chương trình nhỏ được xây dựng cho mọi dịch vụ (chức năng) của ứng dụng một cách độc lập Và những chương trình nhỏ đó được gộp lại với nhau để trở thành một ứng dụng chính thức Các mô-đun trong ứng dụng của các mẫu Microservices được ghép nối một cách lỏng lẻo Vì vậy, bạn có thể dễ dàng sửa đổi và mở rộng

1.3 Tổng quan về công nghệ sử dụng 1.3.1 JDBC (Java Database Connectivity)

Hình 1 3 JDBC

1.3.1.1 Giới thiệu

JDBC (Java Database Connectivity) là một API kết nối các chương trình được viết bởi Java với các hệ quản trị dữ liệu như MySQL, PostgreSQL, JDBC được sử dụng với mục đích quản lý việc kết nối các dữ liệu, thực thi các câu lệnh SQL xuống database và xử lý các tập kết quả dữ liệu thu được từ database đó Ngoài ra, JDBC cũng cho phép người dùng có thể thực hiện các thao tác truy xuất, update các dữ liệu với cơ sở dữ liệu thông qua việc sử dụng các câu lệnh SQL.

JDBC được phát hành tương tự như một phần của JDK vào năm 1997 nên nó được xem là một trong những thành phần đầu tiên góp phần vào sự phát triển của lớp bền vững Java.

JDBC là công cụ thô sơ nhất, mộc mạc nhất dùng để kết nối tới cơ sở dữ liệu Cái chân chất mộc mạc này tuy chán, nhưng lại là kiến thức nền tảng quan trọng cần phải nắm thật vững.

1.3.1.2 Lý do lựa chọn

Trang 14

Hiểu thật rõ về bản chất của JDBC: có thể giúp chúng ta vững vàng tìm

hiểu thêm các frameworks mới và mạnh mẽ như Hibernate, JPA Tất cả chúng, tựu chung đều sử dụng JDBC để thực hiện kết nối và lấy dữ liệu.

Sử dụng tiếp tục dữ liệu hiện có: JDBC cho phép các ứng dụng doanh nghiệp

tiếp tục sử dụng dữ liệu hiện có, ngay cả nếu dữ liệu được lưu trữ trên các hệ quản trị cơ sở dữ liệu khác nhau

Cung cấp độc lập: Sự kết hợp của các Java API và JDBC API làm cho các

cơ sở dữ liệu dịch chuyển từ một trong những nhà cung cấp này tới nhà cung cấp khác mà không cần đoạn mã trong ứng dụng

Nền độc lập: JDBC thường được sử dụng để kết nối với một trong những ứng

dụng người đến một “hậu trường” cơ sở dữ liệu, không có vấn đề của phần mềm quản lý cơ sở dữ liệu được sử dụng để kiểm soát các cơ sở dữ liệu Trong vấn đề kiểu cách, JDBC là nền tảng chéo độc lập

Dễ sử dụng: Với JDBC, sự phức tạp của một chương trình kết nối người dùng

đến một “hậu trường” cơ sở dữ liệu bị ẩn đi và làm cho nó dễ dàng triển khai hơn.

Trang 15

triển mở rộng của CGI để đảm bảo Server thực hiện được các chức năng của mình Ta có thể sử dụng Servlet của Java để tuỳ chỉnh lại một dịch vụ bất kỳ, như Web Server, Mail Server,…

Servlet API được phát triển dựa trên những điểm mạnh của Java platform nhằm giải quyết vấn đề của CGI và Server API Nó là một API đơn giản, hỗ trợ tất cả các Web server và thậm chí cho phép các ứng dụng máy chủ dùng để kiểm tra và quản lý các công việc trên Server Nó giải quyết vấn đề thực thi bằng việc thực hiện tất cả các yêu cầu như các luồng Thread trong quá trình xử lý, hoặc việc cân bằng tải trên một Server trong các cụm máy tính Cluster Các Servlet dễ dàng chia sẻ tài nguyên với nhau.

1.3.2.3 Lý do lựa chọn

Servlet được sử dụng để thay thế cho những công nghệ Web động Việc sử dụng Servlet mang lại những lợi thế:

Dễ di chuyển: Servlet được viết bằng Java nên nó có tính di động cao,thực

hiện được trên nhiều hệ điều hành, trên các Web Server khác nhau Khái niệm “Viết một lần, chạy ở mọi nơi” cũng rất đúng với Servlet

Mạnh mẽ: Servlet hỗ trợ rất hiệu quả cho việc sử dụng các giao diện lõi API

như lập trình mạng, xử lý đa luồng, xử lý ảnh, nén dữ liệu, kết nối các CSDL, bảo mật, xử lý phân tán và triệu gọi từ xa RMI, CORBA, v.v Nó cũng thích hợp để trao đổi tin, truyền thông giữa Client và Server một cách bình thường

Hiệu quả: Servlet có tính hiệu quả cao Một khi được tải về, nó sẽ được lưu

lại trong bộ nhớ của máy chủ Servlet duy trì các trạng thái của nó, do vậy những tài nguyên ngoại như việc kết nối với CSDL cũng sẽ được lưu giữ lại

An toàn: Bởi vì Servlet được viết bằng Java nên nó kế thừa được tính an toàn

của Java Cơ chế tự động dọn rác và việc không sử dụng con trỏ của Java giúp cho Servlet thoát khỏi nhiều công việc quản lý bộ nhớ Đồng thời nó xử lý các lỗi rất an toàn theo cơ chế xử lý ngoại lệ của Java

Tính tích hợp: Các Servlet được tích hợp với các Server Chúng cộng tác với

các Server tốt hơn các chương trình CGI

Tính linh hoạt: Các Servlet hoàn toàn mềm dẻo Một HTTP Servlet được sử

dụng để tạo ra một trang Web, sau đó ta có thể sử dụng thẻ <Servlet> để đưa nó vào trang Web tĩnh, hoặc sử dụng với các Servlet khác để lọc ra các nội dung cần thiết

Trang 16

1.3.3 Bootstrap 1.3.3.1 Giới thiệu

Bootstrap là 1 framework HTML, CSS, và JavaScript cho phép người dùng dễ dàng thiết kế website theo 1 chuẩn nhất định, tạo các website thân thiện với các thiết bị cầm tay như mobile, ipad, tablet,

Bootstrap còn là một bộ sưu tập miễn phí của các mã nguồn mở và công cụ dùng để tạo ra một mẫu website hoàn chỉnh Với các thuộc tính về giao diện được quy định sẵn như kích thước, màu sắc, độ cao, độ rộng…, các designer có thể sáng tạo nhiều sản phẩm mới mẻ nhưng vẫn tiết kiệm thời gian khi làm việc với framework này trong quá trình thiết kế giao diện website.

1.3.3.2Lý do lựa chọn

Dễ dàng thao tác

Cơ chế hoạt động của Bootstrap là dựa trên xu hướng mã nguồn mở HTML, CSS và Javascript Người dùng cần trang bị kiến thức cơ bản 3 mã này mới có thể sử dụng Bootstrap hiệu quả Bên cạnh đó, các mã nguồn này cũng có thể dễ dàng thay đổi và chỉnh sửa tùy ý.

Tùy chỉnh dễ dàng

Bootstrap được tạo ra từ các mã nguồn mở cho phép designer linh hoạt hơn Giờ đây có thể lựa chọn những thuộc tính, phần tử phù hợp với dự án họ đang theo đuổi CDN Bootstrap còn giúp bạn tiết kiệm dung lượng vì không cần tải mã nguồn về máy

Chất lượng sản phẩm đầu ra hoàn hảo

Bootstrap là sáng tạo của các lập trình viên giỏi trên khắp thế giới Bootstrap đã được nghiên cứu và thử nghiệm trên các thiết bị Được kiểm tra nhiều lần trước khi đưa vào sử dụng Do đó, khi chọn Bootstrap, bạn có thể tin rằng mình sẽ tạo nên những sản phẩm với chất lượng tốt nhất.

Độ tương thích cao

Điểm cộng lớn nhất của Bootstrap là khả năng tương thích với mọi trình duyệt và nền tảng Đây là một điều cực kì quan trọng và cần thiết trong trải nghiệm người dùng Sử dụng Grid System cùng với hai bộ tiền xử lý Less và Sass, Bootstrap mặc định hỗ trợ Responsive và ưu tiên cho các giao diện trên thiết bị di động hơn Bootstrap có khả năng tự động điều chỉnh kích thước trang website theo khung

browser Mục đích để phù hợp với màn hình của máy tính để bàn, tablet hay laptop

Trang 17

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

2.1 Phân tích hệ thống 2.1.1 Khảo Sát Sơ Bộ

- Khảo sát: là quá trình thu thập thông tin từ người dùng hoặc khách hàng

thông qua các công cụ và phương pháp tích hợp trong phần mềm Mục đích của khảo sát này có thể là để đánh giá trải nghiệm người dùng, thu thập phản hồi về tính năng, cải thiện chất lượng sản phẩm hoặc dịch vụ, và hiểu rõ hơn về nhu cầu của người dùng

● Đưa ra thông tin đầy đủ và chi tiết về các dịch vụ y tế cung cấp, bác sĩ và chuyên khoa có sẵn, để người dùng có thể lựa chọn dịch vụ phù hợp với nhu cầu của họ

● Cung cấp tính năng tìm kiếm giúp người dùng dễ dàng tìm kiếm bác sĩ, các chuyên khoa, và các lịch trống phù hợp với thời gian của họ

● Bảo đảm rằng dữ liệu cá nhân của người dùng được bảo vệ một cách an toàn và tuân thủ các quy định về bảo mật dữ liệu y tế

● Kết nối với hệ thống thông tin y tế và hệ thống quản lý nội bộ để đồng bộ hóa dữ liệu lịch khám và thông tin bệnh nhân

● Cung cấp cơ chế để thu thập ý kiến phản hồi từ người dùng về trải nghiệm đặt lịch và sử dụng thông tin này để cải thiện liên tục hệ thống

Trang 18

Câu 1: Nguyên nhân thành lập website đặt lịch khám của phòng khám Nha Khoa G12 là gì?

Câu 2: Việc đặt lịch khám trên website có phát triển hơn trong thực tế?

Theo bạn, sự khác nhau giữa 2 việc đấy là gì?

Câu 3: Người quản lý website cần làm gì để kiểm soát thông tin và nhu cầu của khách hàng ?

Câu 4: Trang web có những loại dịch vụ nào ?

Câu 5: Anh/chị cam kết bảo mật và an toàn như thế nào đối với việc thanh toán bằng thẻ?

Câu 6: Chính sách bảo hành khi mua bằng website của công ty anh/chị là như thế nào ?

Câu 7: Anh/chị có thể đưa ra những giải pháp giúp thu hút khách hàng không?

Câu 8: Anh/chị quảng cáo website như thế nào để đạt được hiệu quả tốt nhất?

Câu 9: Trong trường hợp website không đáp ứng được yêu cầu công việc, anh/chị xử lý như thế nào?

Câu 10: Khách hàng có phàn nàn về điều gì hệ thống của tôi không?

Đánh giá chung:

Trang 19

● Đối tượng được hỏi: Nhân viên tiếp nhận, xử lý đơn

● Thu thập tìm hiểu hoạt động đặt lịch khám của phòng khám, xử lý quy trình đặt lịch

Các yêu cầu đòi hỏi:

● Người được hỏi phải là nhân viên làm việc trong phòng khám( thời gian làm việc > 3 tháng)

● Chủ đề 1: Câu hỏi và trả lời

● Chủ đề 2: Câu hỏi và trả lời

● Tổng hợp các nội dung chính ý kiến của người được hỏi

Kết thúc (thỏa thuận)

Ước lượng thời gian2 phút

2 phút 1 phút 8 phút 10 phút 2 phút 1 phút

20/03/2024

Thời điểm bắt đầu: 9hThời điểm kết thúc: 10hĐối tượng:

● Đối tượng được hỏi là quản lý website của phòng khám Nha Khoa G12

● Mục tiêu phỏng vấn:

● Tìm hiểu về website đặt lịch khám

Cách thức hoạt động của trang web đặt lịch khám

Các yêu cầu đòi hỏi:

● Người được hỏi phải là người quản lý website của phòng khám Nha

Trang 20

Chương trình

● Giới thiệu

● Tổng quan về dự án

● Tổng quan về phỏng vấn

● Chủ đề sẽ đề cập, xin phép được ghi âm

● Chủ đề 1: Thông tin tổng quát về website

Dự kiến tổng cộng: 30 phút

PHIẾU PHỎNG VẤN

Tên dự án: Xây dựng website đặt lịch khám bệnh cho phòng khám Nha Khoa G12

Tên tiểu dự án: Đặt lịch khám.

Câu 1: Yêu cầu về chức năng của website là những gì?

Câu 2: Ngoài việc đặt lịch khám bệnh, website còn cung cấp thông tin về các dịch vụ y tế khác của phòng khám không?

Câu 3: Website có tích hợp hệ thống thông báo nhắc nhở cho bệnh nhân về cuộc hẹn của họ không? Nếu có, cách hoạt động của nó như thế nào?

Câu 4: Website có khả năng tùy chỉnh lịch làm việc của các bác sĩ và nhân viên y tế không?

Câu 5: Để đảm bảo tính bảo mật của thông tin cá nhân của bệnh nhân khi họ sử dụng website để đặt lịch khám bệnh thì phải làm như nào?

Câu 6: Làm thế nào để đảm bảo rằng quá trình đặt lịch khám bệnh trên website là dễ dàng và thuận tiện cho người dùng?

Câu 7: Website có tích hợp hệ thống thanh toán trực tuyến cho các dịch vụ y tế được đặt lịch không?

Câu 8: Anh/chị hãy đưa ra giải pháp để nâng cao trải nghiệm người dùng trong tương lai??

Trang 21

Câu 9: Anh/chị hãy đưa ra giải pháp đối với những rắc rối khi đặt lịch khám của khách hàng gặp phải?

Câu 10: Theo anh/chị website có tính năng nào đặc biệt hoặc tiện ích nổi bật mà sẽ thu hút người dùng nhất?

2.1.1.1 Yêu cầu chức năng

● Người dùng có thể đặt phòng khám, xem lịch khám và xóa lịch khám

● Người quản trị có thể quản lý lịch khám, quản lý dịch vụ khám, quản lý thông tin người dùng, lập báo cáo thống kê

2.1.1.2 Yêu cầu phi chức năng

- Giao diện người dùng: Giao diện người dùng phải đảm bảo các yếu tố sau:+ Giao diện phải được thiết kế đơn giản, dễ sử dụng và thân thiện với người

dùng

+ Các nút chức năng cần được bố trí rõ ràng và dễ tìm kiếm.

+ Giao diện phải có khả năng tương thích với các thiết bị di động và đa nền tảng.

- Tính bảo mật và các ràng buộc: Hệ thống phần mềm phải đảm bảo các yêu cầu sau:

+ Hệ thống phải đảm bảo tính bảo mật của thông tin khách hàng và đơn hàng.+ Các tính năng quản lý và sửa đổi sản phẩm phải được xác thực bằng tài

khoản quản trị độc quyền, tránh việc người dùng không có quyền truy cập vào các chức năng này.

+ Phải hỗ trợ chức năng Đăng nhập và xác thực tài khoản khách hàng để tránh việc truy cập trái phép vào thông tin khách hàng và đơn hàng.

+ Phải tuân thủ các quy định pháp luật liên quan đến bảo mật thông tin cá nhân và giao dịch thương mại

Trang 22

2.2 Mô hình hóa cơ sở dữ liệu 2.2.1 Yêu cầu về dữ liệu

- Users : gồm mã người dùng, tên người dùng, email, số điện thoại, địa chỉ,

password, Mỗi khách hàng sở hữu 1 hoặc nhiều tài khoản Mỗi tài khoản chỉ

thuộc 1 và chỉ 1 khách hàng

- Account: gồm mã tài khoản, kiểu tài khoản, ngày tạo, ngày kích hoạt tài khoản,

- Calendar: gồm mã lịch, ngày tạo lịch, email, ngày bắt đầu lịch, ngày kết thúc

lịch, ngày sửa đổi lịch cuối, Mỗi lịch khám chỉ thuộc về 1 và chỉ 1 khách hàng Mỗi lịch khám chỉ thuộc về 1 và chỉ 1 người dùng Mỗi lịch khám chỉ

thuộc về 1 và chỉ 1 phòng Mỗi lịch khám chỉ thuộc về 1 và chỉ 1 dịch vụ - Room : gồm mã phòng, tên phòng, quản lý phòng, ghi chú phòng,…

- Service : gồm mã dịch vụ, tên dịch vụ, giá dịch vụ, ngày tạo, ngày cập nhập mới nhất ,…

- Customer : gồm mã khách hàng, họ tên khách hàng, địa chỉ khách hàng, số

điện thoại, ngày tạo, ghi chú khách hàng ,…

2.2.2 Biểu đồ thực thể liên kết mức logic

Hình 2 1 Biểu đồ thực thể liên kết mức logic

Trang 23

2.2.3 Mô hình cơ sở dữ liệu mức vật lý 2.2.3.1 Biểu đồ thực thể liên kết mức vật lý

Hình 2 2 Biểu đồ thực thể liên kết mức vật lý

2.2.3.2 Thiết kế bảng

Hình 2 3 Bảng tblaccount

Trang 24

Hình 2 4 Bảng tbluser

Hình 2 5 Bảng tblcustomer

Trang 25

Hình 2 6 Bảng tblcalendar

Hình 2 7 Bảng tblroom

Hình 2 8 Bảng tblservice

Trang 26

2.3 Đặc tả hệ thống 2.3.1 Mô tả chức năng

Tác nhân hệ thống:

● Admin sẽ duy trì và quản lý hệ thống

● Khách hàng, bác sĩ, manager, là người sử dụng hệ thống

Các chức năng tương ứng:

Tên UseCase Mô tả

Đăng ký UseCase cho phép khách hàng đăng ký tài khoản cá nhânĐăng nhập UseCase cho phép khách hàng, nha sĩ và quản lý đăng nhập vào hệ thốngCập nhật thông tin UseCase cho phép người dùng cập nhật thông tin cá nhânXem lịch khám UseCase cho phép người dùng có thể xem lịch khámĐặt lịch khám UseCase cho phép khách hàng được đặt lịch khámXóa lịch khám UseCase cho phép khách hàng được xóa lịch khám

Quản lý lịch khám UseCase cho phép người quản lý thêm, sửa và xóa lịch khámQuản lý các phòng UseCase cho phép người quản lý thêm, sửa và xóa các phòngQuản lý dịch vụ

Trang 27

2.3.2 Sơ đồ UseCase

2.4.2.1Sơ đồ UseCase tổng quan

Hình 2.9 Sơ đồ tổng quan các UseCase

Trang 28

2.4.2.3 Sơ đồ phân rã UseCase

Hình 2.10 Biểu đồ phân rã UseCase “QuanLyNguoiDung”

Hình 2.11Biểu đồ phân rã UseCase “QuanLyThucThi”

Hình 2.12 Biểu đồ phân rã UseCase “BaoCaoThongKe”

Trang 29

Hình 2.13 Biểu đồ phân rã UseCase “QuanLyDichVu”

Hình 2.14 Biểu đồ phân rã UseCase “QuanLyLichKham”

Hình 2.15 Biểu đồ phân rã UseCase “QuanLyPhong”

Trang 30

Hình 2.16 Biểu đồ phân rã UseCase “QuanLyTaiKhoan”

Hình 2.17 Biểu đồ phân rã UseCase “CapNhatThongTin”

Hình 2.18 Biểu đồ phân rã UseCase “DangNhap”

Hình 2.19 Biểu đồ phân rã UseCase “XemLichLamViec”

Trang 31

Hình 2.20Biểu đồ phân rã UseCase “CapNhatThongTin”

Hình 2.21 Biểu đồ phân rã UseCase “DangKy” khách hàng

Hình 2.22 Biểu đồ phân rã UseCase “DangNhap” khách hàng

Hình 2.23Biểu đồ phân rã UseCase “DatLichKham”

Hình 2.24 Biểu đồ phân rã UseCase “XemLichKham”

Trang 32

Hình 2.25Biểu đồ phân rã UseCase “XoaLichKham”

2.3.3 Mô tả UseCase

2.3.3.1Mô tả UseCase Đăng nhập

Mô tả Use case này cho phép người dùng đăng nhập vào hệ thống để quản lýNgười

thực hiện Khách hàng Tiền điều

kiện Không có Luồng sự

kiện chính

Use case này bắt đầu khi người dùng kích vào nút “Đăng nhập” trên trang chủ Hệ thống sẽ hiển thị form đăng nhập lên màn hình Người dùng nhập tên tài khoản và mật khẩu vào nút đăng nhập Hệ thống kiểm tra thông tin và cho phép khách hàng đăng nhập vào hệ thống Use case kết thúc.

Luồng rẽ nhánh

1) Khi người dùng nhập sai tên tài khoản hoặc địa chỉ email hoặc mật khẩu, hệ thống hiển thị thông báo lỗi và yêu cầu người dùng nhập lại2) Tại bất kỳ thời điểm nào trong quá trình thực hiện ca sử dụng nếu không kết nối được với cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc

Hậu điều

kiện Không có

2.3.3.2Mô tả UseCase Đăng ký

Mô tả Usecase này cho phép người dùng đăng ký tài khoản mới

Trang 33

Người

thực hiện Khách hàng Tiền điều

kiện Không có Luồng sự

kiện chính

UseCase này bắt đầu khi người dùng kích vào nút “Đăng ký” trên trang chủ Hệ thống sẽ hiển thị form đăng ký lên màn hình Người dùng nhập thông tin tài khoản và nhấn vào nút đăng ký Hệ thống sẽ lưu thông tin tài khoản vào bảng “User” và hiển thị màn hình đăng nhập UseCase kết thúc

Luồng rẽ nhánh

1) Khi người dùng nhập tên đăng nhập đã tồn tại, hệ thống sẽ hiển thị thông báo lỗi và yêu cầu nhập lại thông tin.

2) Tại bất kỳ thời điểm nào trong quá trình thực hiện ca sử dụng nếu không kết nối được với cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc.

Hậu điều

kiện Không có

2.3.3.3 Mô tả UseCase Cập nhật thông tin

Mô tả UseCase này cho phép người dùng cập nhật thông tin cá nhân của họ trong hệ thống, được lưu trữ trong bảng Customer.

Trang 34

Luồng sự

kiện chính 1) Use case bắt đầu khi người dùng chọn chức năng "Cập nhật thông tin" từ giao diện người dùng.2) Hệ thống hiển thị một form cho phép người dùng nhập và cập nhật thông tin cá nhân.

3) Người dùng nhập thông tin mới và xác nhận cập nhật.

4) Hệ thống kiểm tra và cập nhật thông tin trong bảng Customer.5) Use case kết thúc.

Luồng rẽ nhánh

1) Nếu người dùng không nhập thông tin mới hoặc nhập thông tin không hợp lệ, hệ thống hiển thị thông báo lỗi và yêu cầu nhập lại.2) Trong trường hợp lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo lỗi và use case kết thúc.

Hậu điều

kiện Thông tin cá nhân trong bảng Customer được cập nhật thành công.

Trang 35

2.3.3.4 Mô tả UseCase Đặt lịch khám

Mô tả Use case này cho phép người dùng đặt lịch khám trong hệ thống, sử dụng thông tin từ bảng Customer, lịch từ bảng Calendar và danh sách phòng từ bảng Room.

Người thực

hiện Khách hàngTiền điều

3) Người dùng chọn ngày, giờ và phòng khám mong muốn.

4) Hệ thống kiểm tra tính khả dụng của phòng và lịch đặt, sau đó ghi đặt lịch vào bảng Calendar.

5) Hệ thống cập nhật thông tin đặt lịch trong bảng Customer (ví dụ: danh sách lịch đã đặt).

6) Use case kết thúc.

Luồng rẽ nhánh

1) Nếu không có phòng khám nào khả dụng vào thời điểm mong muốn hoặc người dùng không chọn thông tin đúng đắn, hệ thống hiển thị thông báo lỗi và yêu cầu nhập lại.

2) Trong trường hợp lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo lỗi và use case kết thúc.

Hậu điều

Trang 36

2.3.3.5 Mô tả UseCase xóa lịch khám

Mô Tả Use case này cho phép người dùng hủy bỏ lịch khám đã đặt trong hệ thống, sử dụng thông tin từ bảng Customer, lịch từ bảng Calendar và danh sách phòng từ bảng Room.

Người thực

hiện Khách hàng Tiền điều

kiện Khách hàng đã đăng nhập vào hệ thống.Khách hàng lý có ít nhất một lịch khám đã đặt.Luồng sự

1) Nếu người dùng không chọn lịch khám nào hoặc chọn lịch không hợp lệ, hệ thống hiển thị thông báo lỗi và yêu cầu chọn lại.

2) Trong trường hợp lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo lỗi và use case kết thúc.

Hậu điều kiện

Lịch khám đã chọn được hủy và thông tin được cập nhật trong bảng Calendar và bảng Customer.

Trang 37

2.3.3.6 Mô tả UseCase xem lịch khám

Mô Tả thống, sử dụng thông tin từ bảng Customer, lịch từ bảng Calendar, và Use case này cho phép người dùng xem lịch khám đã đặt trong hệ danh sách phòng từ bảng Room.

Người thực

hiện Khách hàng Tiền điều

kiện Khách hàng đã đăng nhập vào hệ thống.Luồng sự

kiện chính 1) từ giao diện người dùng.Use case bắt đầu khi người dùng chọn chức năng "Xem lịch khám" 2) Hệ thống hiển thị danh sách lịch khám đã đặt của người dùng, bao gồm thông tin về thời gian, địa điểm, bác sĩ, và trạng thái.

3) Người dùng có thể xem chi tiết về mỗi lịch khám, bao gồm thông tin về bác sĩ, phòng khám, và các chi tiết khác.

4) Use case kết thúc.

Luồng rẽ nhánh

1) Nếu người dùng không có lịch khám nào hoặc có lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo rằng không có lịch khám nào hoặc có lỗi xảy ra.

2) Người dùng có thể được hướng dẫn kiểm tra lại kết nối hoặc đặt lịch khám mới nếu cần.

Hậu điều kiện

Không có

Trang 38

2.3.3.7 Mô tả UseCase xem lịch làm việc

Mô Tả Use case này cho phép nha sĩ xem lịch làm việc cá nhân, sử dụng thông tin từ bảng Calendar.

3) Nha sĩ có thể xem chi tiết về từng buổi làm việc, bao gồm thông tin về bệnh nhân, loại dịch vụ, và các chi tiết khác.

4) Use case kết thúc.Luồng rẽ

nhánh

1) Nếu nha sĩ không có lịch làm việc nào hoặc có lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo rằng không có lịch làm việc nào hoặc có lỗi xảy ra.

2) Nha sĩ có thể được hướng dẫn kiểm tra lại kết nối hoặc thêm buổi làm việc nếu cần.

Hậu điều kiện

Không có

Trang 39

2.3.3.8 Mô tả UseCase quản lý dịch vụ

Mô Tả Use case này cho phép quản lý xem, thêm, sửa, và xóa thông tin về các dịch vụ trong hệ thống, sử dụng thông tin từ bảng Service.

3) Quản lý có thể thêm mới dịch vụ, sửa thông tin của dịch vụ hiện tại, hoặc xóa dịch vụ khỏi hệ thống.

4) Use case kết thúc.

Luồng rẽ nhánh

1) Nếu quản lý không có quyền truy cập hoặc có lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo lỗi và yêu cầu kiểm tra lại.

2) Quản lý có thể được hướng dẫn liên hệ với quản trị viên để cập nhật quyền truy cập nếu cần.

Hậu điều kiện

Không có

Trang 40

2.3.3.9 Mô tả UseCase quản lý lịch khám

Mô Tả Use case này cho phép quản lý xem, thêm, sửa, và xóa thông tin về lịch khám, sử dụng thông tin từ bảng Calendar.

3) Quản lý có thể thêm mới lịch khám, chỉnh sửa thông tin lịch khám hiện tại, hoặc xóa lịch khám khỏi lịch làm việc.

4) Use case kết thúc.

Luồng rẽ nhánh

1) Nếu quản lý không có quyền truy cập hoặc có lỗi kết nối với cơ sở dữ liệu, hệ thống hiển thị thông báo lỗi và yêu cầu kiểm tra lại.2) Quản lý có thể được hướng dẫn liên hệ với quản trị viên để cập nhật quyền truy cập nếu cần.

Hậu điều kiện

Không có

Ngày đăng: 16/08/2024, 17:31

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

TÀI LIỆU LIÊN QUAN

w