You are on page 1of 97

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN

LƯU THỊ THU HÀ

THIẾT KẾ VÀ XÂY DỰNG WEBSITE


CHO BỆNH VIỆN ĐA KHOA HƯNG HÀ

ĐỒ ÁN TỐT NGHIỆP

HƯNG YÊN – 2018


Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2
BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN

LƯU THỊ THU HÀ

THIẾT KẾ VÀ XÂY DỰNG WEBSITE


CHO BỆNH VIỆN ĐA KHOA HƯNG HÀ

NGÀNH: CÔNG NGHỆ THÔNG TIN

CHUYÊN NGÀNH: KỸ THUẬT PHẦN MỀM

ĐỒ ÁN TỐT NGHIỆP

NGƯỜI HƯỚNG DẪN


TS. NGUYỄN VĂN HẬU

HƯNG YÊN – 2018


Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

MỤC LỤC

MỤC LỤC........................................................................................................3

DANH SÁCH HÌNH VẼ..................................................................................6

DANH SÁCH BẢNG BIỂU.............................................................................8

DANH SÁCH TỪ VIẾT TẮT..........................................................................9

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI....................................................10

1.1 Lý do chọn đề tài..............................................................................10

1.2 Mục tiêu của đề tài...........................................................................11

1.3 Giới hạn và phạm vi của đề tài.........................................................11

1.4 Nội dung thực hiện...........................................................................11

1.5 Phương pháp tiếp cận.......................................................................12

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

2.1 Giới thiệu mô hình MVC.................................................................13

2.1.1 Xuất xứ........................................................................................13

2.1.2 Kiến trúc của mô hình MVC........................................................13

2.1.3 Đặc điểm của mô hình MVC.......................................................15

2.2 Mô hình MVC trong ASP.NET........................................................15

2.2.1 Giới thiệu tổng quan....................................................................15

2.2.2 Lịch sử phát triển của ASP.NET..................................................16

2.2.3 Khái quát các thành phần của ASP.NET MVC............................21

2.2.4 So sánh ASP.NET MVC với ASP.NET.......................................22

2.2.5 Lợi ích của mô hình ASP.NET MVC..........................................24

2.3 Tổng quan về LINQ to SQL.............................................................24

4
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2.3.1 LINQ là gì?..................................................................................24

2.3.2 LINQ to SQL là gì?.....................................................................25

2.3.3 Mô hình hóa CSDL dùng LINQ to SQL......................................26

2.3.4 Lớp Datacontext..........................................................................27

2.3.5 Sử dụng LINQ to SQL trong ASP.NET.......................................27

CHƯƠNG 3: NỘI DUNG THỰC HIỆN......................................................28

3.1 Phát biểu bài toán.............................................................................28

3.2 Yêu cầu của hệ thống.......................................................................28

3.2.1 Yêu cầu chức năng.......................................................................28

3.2.2 Yêu cầu phi chức năng.................................................................30

3.3 Biểu đồ UseCase..............................................................................31

3.3.1 Danh sách các Actor....................................................................31

3.3.2 Danh sách UseCase......................................................................31

3.3.3 Biểu đồ UseCase mức tổng quát..................................................32

3.3.4 Đặc tả UseCase............................................................................32

3.4 Biểu đồ lớp.......................................................................................52

3.4.1 Biểu đồ lớp (mức phân tích)........................................................52

3.4.2 Danh sách các lớp đối tượng và quan hệ......................................53

3.4.3 Mô tả chi tiết từng lớp đối tượng.................................................53

3.5 Biểu đồ tuần tự.................................................................................64

3.6 Thiết kế cơ sở dữ liệu của hệ thống..................................................70

3.7 Thiết kế đặc tả giao diện..................................................................84

3.7.1 Một số giao diện chính của hệ thống...........................................84

3.6.2 Một số giao diện chính của CMS.................................................89


5
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 4: KẾT LUẬN............................................................................95

4.1 Kết quả đạt được của đề tài..............................................................95

4.2 Hạn chế của đề tài............................................................................95

4.3 Hướng phát triển của đề tài..............................................................95

CHƯƠNG 5: TÀI LIỆU THAM KHẢO......................................................96

6
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH HÌNH VẼ

Hình 2-1: Các thành phần chính của mô hình MVC.......................................14

Hình 2-2: Mô hình tuần tự MVC....................................................................14

Hình 2-3: Mô hình MVC................................................................................16

Hình 2-4: Mô hình ASP.NET Webform.........................................................18

Hình 2-5: Nền tảng ASP.NET MVC Framword.............................................21

Hình 2-6: Tạo cơ sở dữ liệu LINQ to SQL.....................................................26

Hình 2-7: LINQ to SQL Class........................................................................26

Hình 3-1: UseCase mức tổng quát..................................................................32

Hình 3-2: UseCase Quản lý tin tức.................................................................33

Hình 3-3: UseCase Quản lý danh mục tin tức.................................................34

Hình 3-4: UseCase Quản lý nhật ký hệ thống.................................................36

Hình 3-5: Use case Quản lý danh mục phân quyền.........................................37

Hình 3-6: Use case Quản lý tài khoản.............................................................38

Hình 3-7: Use case Quản lý bình luận.............................................................40

Hình 3-8: Use case Quản lý danh mục bác sĩ..................................................41

Hình 3-9: Use case Quản lý bệnh viện............................................................42

Hình 3-10: UseCase Quản lý chuyên khoa.....................................................44

Hình 3-11: UseCase Quản lý hình ảnh............................................................45

Hình 3-12: Use case Quản lý văn bản.............................................................47

Hình 3-13: Use case Quản lý video.................................................................48

Hình 3-14: Use case Đăng bài viết..................................................................49

Hình 3-15: Biểu đồ lớp mức phân tích............................................................52

7
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-16: Biểu đồ tuần tự Đăng nhập...........................................................64

Hình 3-17: Biểu đồ tuần tự Thêm tin tức........................................................65

Hình 3-18: Biểu đồ tuần tự Sửa tin tức...........................................................65

Hình 3-19: Biểu đồ tuần tự Xóa tin tức...........................................................66

Hình 3-20: Biểu đồ tuần tự Thêm bệnh viện...................................................67

Hình 3-21: Biểu đồ tuần tự Sửa bệnh viện......................................................67

Hình 3-22: Biểu đồ tuần tự Xóa bệnh viện......................................................68

Hình 3-23: Biểu đồ tuần tự Thêm bác sĩ.........................................................69

Hình 3-24: Biểu đồ tuần tự Sửa thông tin bác sĩ.............................................69

Hình 3-25: Biểu đồ tuần tự Xóa bác sĩ............................................................70

Hình 3-26: Mô hình dữ liệu quan hệ...............................................................71

Hình 3-27: Giao diện trang chủ trên website...................................................84

Hình 3-28: Giao diện cơ sở vật chất, video, đội ngũ bác sĩ.............................85

Hình 3-29: Giao diện thông tin chi tiết bác sĩ.................................................86

Hình 3-30: Giao diện chi tiết tin tức...............................................................87

Hình 3-31: Giao diện trang liên hệ và chân trang............................................88

Hình 3-32: Giao diện đăng nhập tài khoản trên Website.................................89

Hình 3-33: Giao diện trang chủ trên CMS......................................................90

Hình 3-34: Giao diện trang hiển thị danh mục tin tức trên Website................90

Hình 3-35: Giao diện danh sách tin đã đăng...................................................91

Hình 3-36: Giao diện thêm mới tin tức...........................................................92

Hình 3-37: Giao diện trang chỉnh sửa tin tức..................................................93

Hình 3-38: Giao diện trang Nhật ký hệ thống.................................................94

8
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH BẢNG BIỂU

Bảng 2-1: Quá trình phát triển của Asp.net.....................................................17

Bảng 2-2: So sánh giữa ASP.NET Webform và ASP.NET MVC...................23

Bảng 3-1: Danh sách các Actor.......................................................................31

Bảng 3-2: Danh sách các UseCase..................................................................31

Bảng 3-3: Danh sách các lớp đối tượng và quan hệ........................................53

Bảng 3-4: Mô tả chi tiết lớp nhật ký hệ thống.................................................53

Bảng 3-5: Mô tả chi tiết lớp danh mục tin tức.................................................54

Bảng 3-6: Mô tả chi tiết lớp bình luận............................................................55

Bảng 3-7: Mô tả chi tiết lớp chuyên khoa.......................................................56

Bảng 3-8: : Mô tả chi tiết lớp bác sỹ...............................................................57

Bảng 3-9: Mô tả chi tiết lớp văn bản...............................................................58

Bảng 3-10: Mô tả chi tiết lớp tin tức...............................................................59

Bảng 3-11: Mô tả chi tiết lớp phân quyền.......................................................60

Bảng 3-12: Mô tả chi tiết lớp danh mục bệnh viện.........................................60

Bảng 3-13: Mô tả chi tiết lớp hình ảnh...........................................................61

Bảng 3-14: Mô tả chi tiết lớp quản trị viên.....................................................62

Bảng 3-15: Mô tả chi tiết lớp nhóm người dùng.............................................63

Bảng 3-16: Mô tả chi tiết lớp video................................................................63

9
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH TỪ VIẾT TẮT

Từ viết tắt Từ đầy đủ Giải thích

ASP Active Server Page Là một mở rộng ISAPI, cung


cấp một khung làm việc cho các
ứng dụng phía Server

MVC Model, View, Controller Mẫu kiến trúc Model – View -


Controller

CNTT Công nghệ thông tin Công nghệ Thông tin

LINQ Languege Integrated Query Ngôn ngữ tích hợp truy vấn

HTML HyperText Markup Language Ngôn ngữ đánh dấu siêu văn
bản

CSS Cascading Style Sheets Ngôn ngữ quy định cách trình
bày của các thẻ html trên trang
web

CSDL Cơ sở dữ liệu Cơ sở dữ liệu

CMS Content Management System Hệ quản trị nội dung

10
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

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

Thời đại nào cũng thế, sức khỏe luôn được đặt lên hàng đầu bởi vậy mới có
câu nói “Có sức khỏe là có tất cả”. Khi chất lượng cuộc sống ngày càng được tốt
hơn thì nhu cầu khám chữa bệnh chăm sóc sức khỏe của người dân ngày càng lớn.
Yêu cầu về dịch vụ đi kèm cũng đòi hỏi phải được nâng cao.

Trong khi các bệnh viện công đang trong tình trạng quá tải bởi nhu cầu khám
chữa bệnh thì có nhiều bệnh viện tư nhân được thành lập giúp cho người dân có
nhiều sự lựa chọn.

Kinh doanh trong lĩnh vực y tế khám chữa bệnh cũng như nhiều ngành nghề
kinh doanh khác, các doanh nghiệp tổ chức y tế chăm sóc sức khỏe đang phải đối
diện với nhiều áp lực về chất lượng dịch vụ, khả năng điều trị cũng như số lượng
các đối thủ cạnh tranh.

Vậy làm thế nào để quảng bá chất lượng dịch vụ của bệnh viện tới người dân
một cách hiệu quả? Sở hữu một website bệnh viện là phương tiện hiệu quả nhất
giúp cho bệnh viện của bạn vượt lên đối thủ cạnh tranh và quảng bá được dịch vụ
một cách thành công. Bên cạnh đó bệnh nhân có cơ hội tìm hiểu một cách dễ dàng
về dịch vụ khám chữa bệnh chăm sóc sức khỏe tại bệnh viện.

Là một bệnh viện tư đang phát triển, Bệnh viện Đa khoa Hưng Hà rất quan
tâm đến website của mình. Hiện tại Bệnh viện đã có một website nhưng do đã lâu
nên chưa thực sự thân thiện với người dùng, chưa có nhiều chức năng nhằm quảng
bá thương hiệu của bệnh viện, cũng như khách hàng khó tìm kiếm các thông
tin,...Vì vậy bệnh viện cần thay đổi website hiện tại để nâng cao chất lượng khám
chữa bệnh, quảng bá thương hiệu, thuận tiện cho người dùng tra cứu thông tin khám
chữa.

Là sinh viên ngành CNTT, em luôn mong muốn mình sẽ làm được gì đó để
ứng dụng những kiến thức đã học xây dựng được những sản phẩm có ứng dụng

11
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

thực tế. Với mong muốn áp dụng những kiến thức mình đã học được tạo ra sản
phẩm hoàn thiện có tính thực tế, đồng thời giúp nâng cao khả năng lập trình và đúc
rút được nhiều kinh nghiệm cho những công việc trong tương lai sau khi ra trường,
cùng với sự đồng ý của giáo viên hướng dẫn đề tài, em quyết định lựa chọn đề tài
“Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà” để làm đề tài
đồ án tốt nghiệp.

1.2 Mục tiêu của đề tài

Trình bày được các vấn đề liên quan đến APS.NET MVC và ứng dụng vào
xây dựng website Bệnh viện Đa khoa Hưng Hà

Xây dựng được website để nâng cao chất lượng khám chữa bệnh, quảng bá
thương hiệu, thuận tiện cho người bệnh khi tra cứu thông tin khám chữa bệnh,...cho
Bệnh viện Đa khoa Hưng Hà
Triển khai cài đặt và cấu hình Website trên môi trường Internet.

1.3 Giới hạn và phạm vi của đề tài

Đề tài xây dựng website Bệnh viện Đa khoa Hưng Hà sử dụng các công nghệ
lập trình như ASP.NET MVC, SQL Serve 2014 và công cụ lập trình Visual Studio
2015

1.4 Nội dung thực hiện

Nội dung thực hiện/nghiên cứu cụ thể như sau:

- Nghiên cứu công nghệ lập trình Website với ASP.NET MVC

- Phân tích yêu cầu và đề xuất giải pháp Website trên công nghệ .NET

- Thiết kế đặc tả hệ thống.

- Xây dựng Cơ sở dữ liệu.

- Lập trình cho các Module của hệ thống

- Kiểm thử hệ thống.

- Triển khai thực nghiệm hệ thống trên mạng Internet.


12
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

1.5 Phương pháp tiếp cận


- Cách tiếp cận : Nghiên cứu các ngôn ngữ lập trình Website như ASP.NET
MVC, LINQ to SQL, Jquery, HTML, CSS, JavaScritp, java..
- Sử dụng các phương pháp nghiên cứu:
o Phương pháp đọc tài liệu;
o Phương pháp phân tích mẫu;
o Phương pháp thực nghiệm.

13
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

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

2.1 Giới thiệu mô hình MVC

2.1.1 Xuất xứ

Tất cả bắt đầu vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox
PARC ở Palo Alto. Sự ra đời của giao diện đồ họa (Graphical User Interface) và lập
trình hướng đối tượng (Object Oriented Programming) cho phép lập trình viên làm
việc với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính và
phương thức riêng của nó. Không dừng lại ở đó, những nhà nghiên cứu ở Xerox
PARC còn đi xa hơn khi cho ra đời cái gọi là kiến trúc MVC (viết tắt của Model –
View – Controller). MVC được phát minh tại Xerox Parc vào những năm 70, bởi
TrygveReenskaug. MVC lần đầu tiên xuất hiện công khai là trong Smalltalk-80.
Sau đó trong một thời gian dài hầu như không có thông tin nào về MVC, ngay cả
trong tài liệu 80 Smalltalk. Các giấy tờ quan trọng đầu tiên được công bố trên MVC
là “A Cookbook for Using the Model-View-Controller User Interface Paradigm in
Smalltalk - 80”, bởi Glenn Krasner và Stephen Pope, xuất bản trong tháng 8 / tháng
9 năm 1988.

2.1.2 Kiến trúc của mô hình MVC

Trong kiến trúc MVC, một đối tượng đồ họa người dùng (GUI Component)
bao gồm 3 thành phần cơ bản: Model, View và Controller. Model có trách nhiệm
đối với toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa. View chính là thể
hiện trực quan của Model, hay nói cách khác chính là giao diện của đối tượng đồ
họa. Và Controller điều khiển việc tương tác giữa đối tượng đồ họa với người sử
dụng cũng như những đối tượng khác.

14
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 2-1: Các thành phần chính của mô hình MVC

Khi người sử dụng hoặc những đối tượng khác cần thay đổi trạng thái của đối
tượng đồ họa, nó sẽ tương tác thông qua Controller của đối tượng đồ họa. Controller
sẽ thực hiện việc thay đổi trên Model. Khi có bất kỳ sự thay đổi nào ở xảy ra ở
Model, nó sẽ phát thông điệp (broadcast message) thông báo cho View và
Controller biết. Nhận được thông điệp từ Model, View sẽ cập nhật lại thể hiện của
mình, đảm bảo rằng nó luôn là thể hiện trực quan chính xác của Model. Còn
Controller, khi nhận được thông điệp từ Model, sẽ có những tương tác cần thiết
phản hồi lại người sử dụng hoặc các đối tượng khác.

Hình 2-2: Mô hình tuần tự MVC

15
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2.1.3 Đặc điểm của mô hình MVC

Lợi ích quan trọng nhất của mô hình MVC là nó giúp cho ứng dụng dễ bảo trì,
module hóa các chức năng, và được xây dựng nhanh chóng. MVC tách các tác vụ
của ứng dụng thành các phần riêng lẽ model, view, controller giúp cho việc xây
dựng ứng dụng nhẹ nhàng hơn. Dễ dàng thêm các tính năng mới, và các tính năng
cũ có thể dễ dàng thay đổi. MVC cho phép các nhà phát triển và các nhà thiết kế có
thể làm việc đồng thời với nhau. MVC cho phép thay đổi trong 1 phần của ứng
dụng mà không ảnh hưởng đến các phần khác. Sở dĩ như vậy vì kiến trúc MVC đã
tách biệt (decoupling) sự phụ thuộc giữa các thành phần trong một đối tượng đồ
họa, làm tăng tính linh động (flexibility) và tính tái sử dụng (reusebility) của đối
tượng đồ họa đó. Một đối tượng đồ họa bấy giờ có thể dễ dàng thay đổi giao diện
bằng cách thay đổi thành phần View của nó trong khi cách thức lưu trữ (Model)
cũng như xử lý (Controller) không hề thay đổi. Tương tự, ta có thể thay đổi cách
thức lưu trữ (Model) hoặc xử lý (Controller) của đối tượng đồ họa mà những thành
phần còn lại vẫn giữ nguyên.

Chính vì vậy mà kiến trúc MVC đã được ứng dụng để xây dựng rất nhiều
framework và thư viện đồ họa khác nhau. Tiêu biểu là bộ thư viện đồ họa của ngôn
ngữ lập trình hướng đối tượng SmallTalk (cũng do Xerox PARC nghiên cứu và phát
triển vào thập niên 70 của thế kỷ 20). Các Swing Components của Java cũng được
xây dựng dựa trên kiến trúc MVC. Đặc biệt là nền tảng ASP.NET MVC Framework
sẽ được em trình bày ở chương sau đây.

2.2 Mô hình MVC trong ASP.NET

2.2.1 Giới thiệu tổng quan

Như đã nói ở phần 1, mô hình MVC với những ưu điểm đã được ứng dụng
nhiều trên các nền tảng (framework) khác nhau, trong đó có một nền tảng
(framework) nổi tiếng được nhiều người biết đến và sử dụng đó là nền tảng
(framework) ASP.NET MVC. Vậy ASP.NET MVC là gì ? ASP.NET MVC là một
nền tảng (framework) phát triển ứng dụng web mới của Microsoft, nó kết hợp giữa

16
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

tính hiệu quả và nhỏ gọn của mô hình model-viewcontroller(MVC), những ý tưởng
và công nghệ hiện đại nhất, cùng với những thành phần tốt nhất của nền tảng
ASP.NET hiện thời. Là một lựa chọn khác bên cạnh nền tảng WebForm khi phát
triển 1 ứng dụng web sử dụng ASP.NET. Trong chương này em sẽ trình bày lý do
lại sao ASP.NET MVC được tạo ra, nó có gì khác so với ASP.NET WebForm, và
cuối cùng là những cái mới trong ASP.NET MVC.

Hình 2-3: Mô hình MVC

2.2.2 Lịch sử phát triển của ASP.NET

Để hiểu được những đặc điểm nổi bật và mục tiêu thiết kế của ASP.NET
MVC, trước tiên cần coi lại lịch sử phát triển của website ASP. Trong số những nền
tảng phát triển web của Microsoft, chúng ta sẽ thấy sức mạnh và sự phức tạp tăng
lên theo từng năm. Như trong bảng ta thấy mỗi nền tảng mới đều giải quyết những
thiếu sót đặc trưng của nền tảng trước đó. Tương tự, ASP.NET MVC được thiết kế
để giải quyết những thiếu sót của ASP.NET WebForms truyền thống, nhưng lại
bằng cách nhấn mạnh sự đơn giản.

17
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Bảng 2-1: Quá trình phát triển của Asp.net

Thời kì Công nghệ Sức mạnh Điểm yếu

Thời kỳ đầu Common Gateway Đơn giản, linh hoạt Chạy ngoài web
Interface (CGI) Lựa chọn duy nhất serve, nên cần nhiều
vào thời điểm này tài nguyên (cần các
tiến trình riêng lẻ
trên HĐH cho mỗi
lời yêu cầu)
Cấp thấp

Thời kỳ tiếp Microsoft Internet Chạy trong web Chỉ là đóng gói cho
theo Database Connector server những câu truy vấn
(IDC) SQL và template
cho các kết quả

1996 Active Server Pages Khả năng dễ tiếp Mục đích chung Xu
(ASP) cận, tính mở, không hướng “spaghetti
cần biên dịch code”

2002 ASP.NET 1.0/1.1 Đã được biên dịch Nặng nề trên băng


Giao diện có trạng thông HTML khó
thái nhìn
Cấu trúc lớn Không thể test
Xu hướng lập trình
hướng đối tượng

2005 ASP.NET 2.0

2007 ASP.NET Ajax

2008 ASP.NET 3.5

3/2009 ASP.NET MVC 1.0

18
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3/2010 ASP.NET MVC 2.0

1/2011 ASP.NET MVC 3.0

8/2012 ASP.NET MVC 4.0

10/2013 ASP.NET MVC 5

 ASP.NET truyền thống

ASP.NET đã là 1 bước nhảy vọt khi lần đầu tiên xuất hiện, nhằm thu hẹp khoảng
cách giữa phát triển Window Form hướng đối tượng (có trạng thái) và phát triển
web hướng HTML (không có trạng thái). Hình dưới minh họa công nghệ Asp.net
WebForm trong lần đầu xuất hiện năm 2002.

Hình 2-4: Mô hình ASP.NET Webform

Microsoft đã cố gắng che dấu HTTP (không trạng thái) và HTML (vào thời điểm đó
không thân thiện với nhiều người lập trình) bằng cách dùng mô hình giao diện như
một đối tượng điều khiển (control) có cấu trúc hoạt động phía server.

Mỗi đối tượng điều khiển (control) lưu giữ trạng thái qua các yêu cầu (request)
(sử dụng tính năng ViewState), tự động tạo ra mã HTML khi cần thiết, và tự động
kết nối với các sự kiện phía client (ví dụ như click) với mã hồi đáp phía server. Kết

19
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

quả WebForm là một lớp trừu tượng lớn nhằm chuyển giao diện có xử lý sự kiện
thông qua Web.

Nhược điểm của ASP.NET

ASP.NET truyền thống đã từng là một ý tưởng hay, nhưng thực tế lại trở nên rắc
rối. Qua nhiều năm, sử dụng ASP.NET WebForm cho thấy có một số nhược điểm:

- ViewState (trạng thái hiển thị): Kĩ thuật lưu giữ trạng thái qua các yêu cầu
(request) thường mang lại kết quả là những khối dữ liệu lớn được chuyển qua lại
giữa client và server. Nó có thể đạt hàng trăm kilobytes trong nhiều dữ liệu thực, và
nó đi qua đi lại với mỗi lần yêu cầu (request), làm những người truy cập vào trang
web phải chờ một thời gian dài khi họ click một button hoặc cố gắng di chuyển đến
trang kế tiếp. ASP.NET bị tình trạng này rất tồi tệ, Ajax là một trong các giải pháp
được đưa ra để giải quyết vấn đề này.

- Page life cycle (chu kỳ sống của một trang web): Kĩ thuật kết nối sự kiện
phía client với mã xử lý sự kiện phía server là một phần của page life cycle, có thể
cực kì rắc rối và mỏng manh. Chỉ có một số ít lập trình viên thành công trong việc
xử lý hệ thống đối tượng điều khiển (control) trong thời gian thực mà không bị lỗi
ViewState hoặc hiểu được rằng một số trình xử lý sự kiện không được kích hoạt
một cách bí hiểm.

- Limited control over HTML (giới hạn kiểm soát HTML): Server control tự
tạo ra nó như là mã HTML, nhưng không phải là mã HTML mà bạn muốn. Ngoài
việc mã HTML của chúng thường không tuân theo tiêu chuẩn web hoặc không sử
dụng tốt CSS mà hệ thống các server control còn tạo ra các giá trị ID phức tạp và
không đoán trước dc, làm khó khăn trong việc sử dụng JavaScript.

- Ý thức sai về sự tách biệt các thành phần: Mô hình code-behind của
ASP.NET cung cấp một giải pháp cho phép ứng dụng đưa mã ra khỏi các dòng
HTML vào thành một lớp code – behind riêng biệt. Điều này đã được ca ngợi là làm
tách biệt giữa giao diện với mã xử lý, nhưng thực tế người lập trình được khuyến
khích pha trộn mã xử lý giao diện (xử lý cây control phía server) với mã xử lý

20
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

chương trình (xử lý CSDL) trong cùng những lớp code behind khổng lồ. Nếu không
có sự tách biệt rõ ràng giữa các thành phần, kết quả cuối cùng thường là mỏng
manh và khó hiểu.

- Untestable (kiểm chứng): Khi những người thiết kế của ASP.NET lần đầu
tiên giới thiệu nền tảng này, họ có thể đã không lường trước được là việc kiểm thử
(test) tự động sẽ trở thành một công đoạn chính của việc phát triển phần mềm ngày
nay. Không quá ngạc nhiên, cấu trúc mà họ đã thiết kế hoàn toàn không thích hợp
với việc kiểm thử (test) tự động.

- ASP.NET tiếp tục bổ sung thêm các tính năng. Phiên bản 2.0 thêm nhiều
thành phần (component) chuẩn có thể giảm khá nhiều lệnh mà bạn cần phải tự viết.
AJAX release năm 2007 đã là phản hồi của Microsoft với phong trào Web 2.0/Ajax
hồi đó, hỗ trợ tương tác phía client trong khi làm cho công việc của người lập trình
đơn giản hơn. Phiên bản 3.5 là một bản nâng cấp nhỏ hơn, thêm hỗ trợ cho các tính
năng của .NET 3.5 và các đối tượng điều khiển (control) mới. Tính năng ASP.NET
Dynamic Data tạo ra các trang cho phép chỉnh sửa / liệt kê cơ sở dữ liệu một cách
tự động .

 Sự ra đời của ASP.NET MVC

Vào tháng 11 năm 2007, ở hội thảo ALT.NET tại Austine, Texas, giám đốc điều
hành Scott Guthrie của Microsoft đã công bố và mô tả về nền tảng phát triển web
MVC mới, xây dựng trên ASP.NET, rõ ràng được thiết kế như là một lời hồi đáp
thẳng vào các lời chỉ trích trước đây.

ASP.NET MVC cung cấp sự tách biệt rõ ràng giữa các thành phần bất chấp việc sử
dụng lại mô hình MVC mặc dù nó không có gì mới – MVC lần đầu được công bố
vào năm 1978 trong dự án Smalltalk của Xerox PARC - nhưng ngày nay nó phổ
biến như là một kiến trúc cho các ứng dụng web bởi vì các lý do sau :

- Người dùng tương tác với ứng dụng MVC tự nhiên sẽ theo một chu trình :
người dùng thực hiện một hành động, và để hồi đáp lại, ứng dụng thay đổi mô hình
dữ liệu của nó và chuyển một trang đã được cập nhật cho người dùng, và sau đó

21
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

vòng xoay lập lại. Điều này là thích hợp cho một ứng dụng web phải luân chuyển
hàng loạt các lời yêu cầu cũng như hồi đáp.

- Những ứng dụng web luôn cần phải kết hợp một số công nghệ (về cơ sở dữ
liệu, HTML và mã xử lý), luôn chia thành nhiều lớp, và những mẫu đề ra đã nảy
sinh thành các khái niệm trong MVC. ASP.NET MVC thực thi một biến thể hiện
đại trên MVC mà đặc biệt thích hợp với các ứng dụng web.

2.2.3 Khái quát các thành phần của ASP.NET MVC

Như đã giới thiệu ở chương trên, ASP.NET MVC cũng chia nhỏ một ứng dụng
thành ba thành phần để cài đặt, mỗi thành phần đóng một vai trò khác nhau và ảnh
hưởng lẫn nhau, đó là models, views, và controllers.

Hình 2-5: Nền tảng ASP.NET MVC Framword

Models trong các ứng dụng dựa trên MVC là những thành phần có nhiệm vụ lưu trữ
thông tin, trạng thái của các đối tượng, thông thường nó là một lớp được ánh xạ từ
một bảng trong CSDL. Lấy ví dụ, chúng ta có lớp Giáo trình được sử dụng để mô tả
dữ liệu từ bảng Giáo trình trong SQL, bao gồm Mã giáo trình, Tên giáo trình...

Views chính là các thành phần chịu trách nhiệm hiển thị các thông tin lên cho người
dùng thông qua giao diện. Thông thường, các thông tin cần hiển thị được lấy từ
thành phần Models.

Ví dụ, đối tượng Giáo trình có một "Edit" view bao gồm các textbox, các dropdown
và checkbox để chỉnh sửa các thuộc tính của thông tin giáo trình; có một "Display"

22
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

view gồm 2 dòng, cột dòng là Mã giáo trình, dòng sau là Tên giáo trình... để xem
thông tin về sinh viên.

Controllers trong các ứng dụng kiểu MVC chịu trách nhiệm xử lý các tác động về
mặt giao diện, các thao tác đối với models, và cuối cùng là chọn một view thích hợp
để hiển thị ra màn hình. Trong kiến trúc MVC, View chỉ có tác dụng hiển thị giao
diện mà thôi, còn điều kiển dòng nhập xuất của người dùng vẫn do Controllers đảm
trách.

2.2.4 So sánh ASP.NET MVC với ASP.NET

Bạn đã được nghe qua về điểm yếu và giới hạn của ASP.NET WebForm truyền
thống, và làm thế nào mà ASP.NET MVC vượt qua những vấn đề này. Điều đó
không có nghĩa là ASP.NET WebForm đã chết mà chỉ là : Microsoft muốn mọi
người hiểu rằng có hai nền tảng song song nhau, hỗ trợ cho nhau, và cả hai đều là
đối tượng cho việc phát triển hiện tại. Nói chung, việc bạn chọn lựa giữa hai mô
hình còn tùy vào hoàn cảnh.

ASP.NET WebForm mang tới một trang web mà giao diện có thể lưu giữ trạng
thái, và cuối cùng thêm vào một lớp trừu tượng tinh vi nằm trên HTTP và HTML,
sử dụng ViewState và postback để tạo ra hiệu ứng của việc có trạng thái . Điều này
thích hợp với phong cách phát triển kéo và thả của Window Form, tức là bạn đặt
các đối tượng có giao diện lên trang và mã xử lý vào trình xử lý sự kiện của chúng.

MVC hòa vào bản chất không trạng thái của HTTP, làm việc chung với nó hơn là
chống lại. Điều này yêu cầu bạn phải hiểu thật sự cách làm việc của một ứng dụng
web, để đạt được điều đó, MVC cung cấp một cách tiếp cận đơn giản, mạnh mẽ và
hiện đại cho việc viết các ứng dụng web với mã có trật tự mà dễ dàng để kiểm thử
(test) và bảo trì sau này, giải phóng những phức tạp khó chịu và các giới hạn không
đáng có.

Điều đặc biệt là ASP.NET MVC có mã nguồn mở, không giống các nền tảng trước
đó, bạn có thể dễ dàng tải mã nguồn gốc của ASP.NET MVC, thậm chí bạn có thể
sửa đổi và tạo ra phiên bản của riêng bạn.

23
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Có những tình huống mà ASP.NET WebForm khá tốt thậm chí còn tốt hơn
ASP.NET MVC. Ví dụ như các ứng dụng nhỏ, nội bộ mà trực tiếp kết nối thẳng vào
các bảng CSDL hoặc dẫn người sử dụng thông qua các trình hướng dẫn tự động
(wizard). Vì thế sẽ không cần phải lo lắng về băng thông do ViewState, không dính
dáng tới vấn đề tối ưu hóa hệ thống tìm kiếm, và không bị làm phiền về việc kiểm
thử (test) và bảo trì lâu dài. Sự tiện lợi của cách phát triển kiểu kéo thả của
ASP.NET WebForm làm mờ đi các điểm yếu của nó.

Nhưng mặt khác, nếu bạn viết 1 ứng dụng trên Internet, hoặc các ứng dụng nội bộ
lớn hơn, bạn sẽ hướng tới tốc độ download nhanh và tương thích trình duyệt chéo,
được xây dựng với chất lượng cao hơn, mã kiến trúc tốt thích hợp cho việc test tự
động, trong trường hợp đó ASP.NET MVC sẽ mang lại nhưng ưu điểm quan trọng.

Bảng 2-2: So sánh giữa ASP.NET Webform và ASP.NET MVC

Tính năng ASP.NET ASP.NET MVC

Kiến trúc Kiến trúc mô hình WebForm- Kiến trúc sử dụng việc phân
chương trình >Business- >Database chia chương trình thành
Controllers, Models, View

Cú pháp Sử dụng cú pháp WebForm, tất Các sự kiện được kiều khiển
chương trình cả các sự kiện và control do bởi controllers, các control
server quản lý không do server quản lý

Truy cập dữ Sử dụng hầu hết các công nghệ Phần lớn dùng LINQ to SQL
liệu truy cập dữ liệu trong ứng dụng class để tạo mô hình truy cập
đối tượng

Debug Debug chương trình phải thực Debug có thể sử dụng các unit
hiện tất cả bao gồm các lớp test kiểm tra các phương thức
truy cập dữ liệu, sự hiển thị, trong controllers
điều khiển các controls

Tốc độ phân Tốc độ phân tải chậm trong khi Phân tải nhanh hơn do không

24
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

tải trang có quá nhiều các controls phải quản lý ViewState để quản
vì ViewState quá lớn lý các control trong trang

Tương tác với Tương tác với javascrip khó Tương tác với javascrip dễ
javascrip khăn vì các controls được điều dàng vì các đối tượng không do
khiển bởi server server quản lý điều khiển
không khó

URL Address Cấu trúc địa chỉ URL có Cấu trúc địa chỉ rành mạch theo
dạng .aspx?& dạng Controllers/Action/ID

2.2.5 Lợi ích của mô hình ASP.NET MVC

- Có tính mở rộng do có thể thay thế từng thành phần 1 cách dễ dàng
- Không sử dụng Viewstate, điều này làm các nhà phát triển dễ dàng điều
khiển ứng dụng của mình.
- Hệ thống định tuyến mới mạnh mẽ.
- Hỗ trợ tốt hơn cho test-driven development (TDD – mô hình phát triển kiểm
thử) cài đặt các kiểm thử đơn vị (unit tests) tự động, xác định và kiểm tra lại
các yêu cầu trước khi bắt tay vào viết code.
- Hỗ trợ kết hợp rất tốt giữa người lập trình và người thiết kế giao diện.
- Sử dụng các tính năng tốt nhất đã có của ASP.NET.

2.3 Tổng quan về LINQ to SQL

2.3.1 LINQ là gì?


- LINQ (Languege Integrated Query) là một thành phần của
Microsoft .NET Framework để mở rộng khả năng truy vấn dữ liệu cho
các ngôn ngữ lập trình .NET như C# và VB.NET…

- LINQ hỗ trợ hầu hết các dạng nguồn dữ liệu khác nhau, bao gồm cả đối
tượng bộ nhớ (LINQ to Object), XML (LINQ to XML), cơ sở dữ liệu
SQL Server (LINQ to SQL)…

25
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

- LINQ có từ phiên bản .NET Framework 3.5, do đó nếu muốn truy vấn dữ
liệu bằng LINQ thì tối thiểu chương trình phải được chạy trên nền tảng
3.5 hoặc mới hơn.

- LINQ là phần mở rộng cho phép viết các câu truy vấn ngay trong ngôn
ngữ lập trình. Nó cho phép làm việc với các kiểu tập hợp dữ liệu như:
XML, collection, array… và cả cơ sở dữ liệu.

- ADO.NET là công nghệ cho phép các ứng dụng có thể kết nối và làm việc
với các loại cơ sở dữ liệu khác nhau (truy vấn, thêm, xóa, cập nhật, gọi
thủ tục…).

- Bản thân LINQ không phải là một công nghệ được tạo ra để thay thế
ADO.NET, chúng ta có thể làm việc với LINQ mà không dính tới cơ sở
dữ liệu. Tuy nhiên, LINQ to SQL, là một phần mở rộng của LINQ, cho
phép chúng ta có thể làm việc được với cơ sở dữ liệu SQL Server, trong
trường hợp này chúng ta có thể bỏ qua các câu lệnh ADO.NET mà chỉ
quan tâm tới cú pháp mà LINQ cung cấp.

2.3.2 LINQ to SQL là gì?


- LINQ to SQL là một phiên bản hiện thực hóa của O/RM (object relational

Mapping) có bên trong .NET Framework bản “Orcas” (nay là .NET 3.5),
nó cho phép bạn mô hình hóa một cơ sở dữ liệu dùng các lớp .NET. Sau
đó bạn có thể truy vấn cơ sở dữ liệu (CSDL) dùng LINQ, cũng như cập
nhật/thêm/xóa dữ liệu từ đó.

- LINQ to SQL hỗ trợ đầy đủ transaction, view và các stored procedure


(SP). Nó cũng cung cấp một cách dễ dàng để thêm khả năng kiểm tra tính
hợp lệ của dữ liệu và các quy tắc vào trong mô hình dữ liệu của bạn.

26
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2.3.3 Mô hình hóa CSDL dùng LINQ to SQL

Có thể thêm một mô hình dữ liệu LINQ to SQL vào một project ASP.NET,
Class Library hay Windows bằng cách dùng tùy chọn “Add New Item” trong
Visual Studio và chọn “LINQ to SQL Classes”.

Hình 2-6: Tạo cơ sở dữ liệu LINQ to SQL

Việc chọn mục “LINQ to SQL Classes” sẽ khởi chạy LINQ to SQL
designer, và cho phép mô hình hóa các lớp mà nó biểu diễn một CSDL quan hệ
bằng cách kéo thả các bảng trong Server Explorer vào LINQ to SQL designer.

Hình 2-7: LINQ to SQL Class

27
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Sau đó “SAVE” lại là chúng ta đã mô hình hóa được cơ sở dữ liệu vừa chọn
vào file LINQ to SQL. Nó cũng sẽ tạo ra một lớp kiểu “DataContext”, trong đó có
các thuộc tính để biểu diễn mỗi bảng mà chúng ta mô hình hóa trong CSDL, cũng
như các phương thức cho mỗi Stored Procedure mà chúng ta mô hình hóa.

2.3.4 Lớp Datacontext

Khi bạn bấm nút “Save” bên trong màn hình thiết kế LINQ to SQL, Visual
Studio sẽ lưu các lớp .NET biểu diễn các thực thể và quan hệ bên trong CSDL
mà chúng ta vừa mô hình hóa. Cứ mỗi một file LINQ to SQL chúng ta thêm vào
solution, một lớp DataContext sẽ được tạo ra, nó sẽ được dùng khi cần truy vấn
hay cập nhật lại các thay đổi. Lớp DataContext được tạo sẽ có các thuộc tính để
biểu diễn mỗi bảng được mô hình hóa từ CSDL, cũng như các phương thức mà
chúng ta đã thêm vào.

2.3.5 Sử dụng LINQ to SQL trong ASP.NET

LINQ to SQL được Microsoft giới thiệu năm 2007 như là một phần
của .NET, nó được thiết kế để giúp chúng ta giảm tải một số lượng lớn đoạn code
cần viết khi thao tác truy xuất cơ sở dữ liệu, và giúp chúng ta thoát khỏi gánh
nặng trong việc tạo và duy trì stored procedure cho mỗi loại query chúng ta cần
thực thi. Nó là một công cụ

ORM (Objectrelational mapping), nó chưa tốt bằng Nhibernate, nhưng đôi khi
nó dễ dàng sử dụng.

Cách sử dụng LINQ to SQL rất đơn giản, từ trong môi trường Visual
Studio, chúng ta kéo và thả các tables và stored procedures vào trong tấm
bạc(cửa sổ do visual tạo ra khi thao tác kéo thả cơ sở dữ liệu), sau đó, chúng ta
sử dụng các câu lệnh truy vấn LINQ bên trong code C#, và nhận lấy các thực thể
này từ data context (nó chuyển câu truy vấn từ LINQ sang SQL lúc thực thi),
thay đổi chúng bên trong C#, sau đó gọi SubmitChanges() để viết những thay đổi
này ngược trở lại cơ sở dữ liệu.

28
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 3: NỘI DUNG THỰC HIỆN

3.1 Phát biểu bài toán

Hệ thống website Bệnh viện Đa khoa Hưng Hà cung cấp các chức năng như:
Tìm kiếm các dich vụ của bệnh viện, thông tin bác sỹ, giờ làm việc của bệnh viện,
các tin tức trên website; Khách hàng (bệnh nhân) có thể viết bình luận, gửi phản
hồi, góp ý cho bệnh viện.

Hệ thống Website Bệnh viện Đa khoa Hưng Hà cần đạt được những mục tiêu
sau:
1. Xây dựng được giao diện người dùng thân thiện. Người dùng có thể
xem các thông tin bệnh viện, bác sĩ, chuyên khoa, hoạt động của bệnh viện
qua các hình ảnh, tin tức, video
2. Người dùng có thể lựa chọn Bệnh viện Đa khoa Hưng Hà theo site
gần nơi mình nhất để tiện xem và thăm khám
3. Khi chọn 1 bài viết sẽ chuyển tới trang chi tiết của bài viết. Bên dưới
các bài viết liên quan
4. Xây dựng hoàn thiện giao diện trang quản trị với các chức năng như
quản lý danh mục tin tức, quản lý tin tức, quản lý hình ảnh, quản lý video,
quản lý văn bản, quản lý thông tin bệnh viện, quản lý thông tin chuyên khoa,
quản lý thông tin bác sĩ, quản lý bình luận
5. Xây dựng được tính năng bảo mật cao, phân quyền cho người sử dụng
6. Xây dựng tính năng xem nhật ký hoạt động

3.2 Yêu cầu của hệ thống

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

3.2.1.1. Đăng nhập

- Cung cấp chức năng đăng nhập cho người dùng.

- Yêu cầu người dùng đăng nhập khi muốn bình luận hay viết bài.

29
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.2.1.2. Xem thông tin bệnh viện theo site

- Hiển thị các bài viết theo site bệnh viện

- Khi người dùng chọn site bệnh viện nào thì Website sẽ chuyển tới trang có
bài viết thuộc bệnh viện đó.

- Hiển thị bài viết theo Tiếng Việt và Tiếng Anh. Nếu bài viết người đăng bài
chỉ đăng bằng Tiếng Viết thì hệ thống sẽ tự động sao chép bài viết Tiếng Việt đó
sang trang bằng Tiếng Anh

3.2.1.3. Xem thông tin trên trang chủ

- Hiển thị phần header là địa chỉ bệnh viện, số điện thoại cấp cứu, đường dây
nóng, link facebook, logo của bệnh viện

- Hiển thị phần thân trang là slide quảng bá hình ảnh, tìm kiếm, các box hình
ảnh nhằm quản bá hình ảnh bệnh viện như lý do chọn chúng tôi, các chuyên khoa;
video, đội ngũ bác sĩ, dịch vụ nổi bật, tin tức nổi bật, liên hệ.

+ Trang chuyên khoa: Hiển thị theo hình ảnh các box hình vuông để người
dùng lựa chọn các chuyên khoa. Khi nhấn vào sẽ hiển thị thông tin chi tiết, các bác
sĩ và bài viết về chuyên khoa đó

+ Trang dịch vụ nổi bật: Hiển thị các dịch vụ của bệnh viện theo các box hình
vuông để khách hàng dễ tìm kiếm. Khi click vào dịch vụ nào thì sẽ hiển thị các bài
viết về dịch vụ đó

+ Phần Đội ngũ bác sĩ: chia làm 2 tab là Bác sĩ nội viện và Bác sĩ ngoại viện.
Khi khách hàng click vào ảnh bác sĩ nào sẽ hiển thị các thông tin cơ bản của bác sĩ
đó

3.2.1.4. Bình luận bài viết

- Cho phép người dùng bình luận ở cuối mỗi bài viết.

- Khi người dùng nhấn bình luận cần nhập đầy đủ thông tin Họ tên và email.
Bình luận đó phải được duyệt bởi quản trị viên thì mới hiển thị lên trang chủ

30
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.2.1.5. Xem danh sách bài viết


- Đây là danh sách các bài viết trên Website được sắp xếp theo thứ tự giảm
dần theo thời gian đăng. Hiển thị phía bên phải nội dung chi tiết tin tức.

3.2.1.6. Xem chi tiết bài viết


- Hiển thị chi tiết của bài viết khi khách hàng click vào “Xem chi tiết bài viết”
- Chi tiết bài viết bao gồm: ngày đăng, số lượt xem, nội dung chi tiết của bài
viết khách hàng chọn, nguồn bài viết, tất cả các bình luận khách hàng, phần
bình luận của khách hàng, các tin tức liên quan.

3.2.1.7. Xem thông tin liên hệ


- Thông tin liên hệ của Website sẽ được hiển thị ở phần footer.

3.2.1.8. Chức năng tìm kiếm


- Người dùng có thể tìm kiếm bài viết bằng cách nhập các từ khóa tìm kiếm
vào ô tìm kiếm.
- Kết quả tìm kiếm sẽ được hiển thị để người dùng thao tác.

3.2.1.9. Chức năng đăng xuất

- Cung cấp chức năng đăng xuất cho các tài khoản quản trị.

- Khi người dùng sử dụng chức năng đăng xuất, Website sẽ chuyển đến trang
đăng nhập.

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


- Yêu cầu giao diện: thân thiện, dễ sử dụng với người dùng
- Tốc độ xử lý nhanh
- Tính an toàn và bảo mật
- Tính tương thích: tương thích với các trình duyệt Chrome, Cốc Cốc, Firefox,
Internet Explorer

31
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.3 Biểu đồ UseCase

3.3.1 Danh sách các Actor

Bảng 3-3: Danh sách các Actor

STT Tên Actor Ý nghĩa

1 Tổng quản trị Tổng điều hành toàn bộ website

2 Quản trị viên Nhân viên quản lý website

3 Người viết bài Người viết bài, viết tin tức cho website

4 Khách hàng (bệnh nhân) Xem thông tin trên website, viết bình luận

3.3.2 Danh sách UseCase

Bảng 3-4: Danh sách các UseCase

STT Tên chức năng Mô tả

-Bao gồm: tin đã đăng, tin chờ duyệt, tin


1. Quản lý tin tức không duyệt, tin đã xóa
-Thêm, sửa, xóa, tìm kiếm, duyệt tin tức

2. Quản lý danh mục tin tức Thêm, sửa, xóa, tìm kiếm danh mục tin tức

3. Quản lý nhật ký hệ thống Xem, xóa nhật ký hoạt động

4. Quản lý danh mục phân quyền Thêm, sửa, xóa quyền

5. Quản lý tài khoản Thêm, sửa, xóa, tìm kiếm tài khoản

6. Quản lý bình luận Xem, duyệt, xóa bình luận

7. Quản lý danh mục bác sỹ Thêm, sửa, xóa, tìm kiếm bác sỹ

8. Quản lý bệnh viện Thêm, sửa, xóa, tìm kiếm bệnh viện

9. Quản lý chuyên khoa Thêm, sửa, xóa, tìm kiếm chuyên khoa

32
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

10. Quản lý hình ảnh Thêm, sửa, xóa, tìm kiếm hình ảnh

11. Quản lý văn bản Thêm, sửa, xóa, tìm kiếm văn bản

12. Quản lý video Thêm, sửa, xóa, tìm kiếm video

13. Đăng bài viết Thêm, sửa, xóa, tìm kiếm bài viết

14. Viết bình luận Viết bình luận bài viêt

3.3.3 Biểu đồ UseCase mức tổng quát

System

DangBaiViet
VietBinhLuan

KhachHang QuanLyTinTuc
<<include>> <<include>> NguoiVietBai

QuanLyBinhLuan
QuanLyDanhMucTin
<<include>> <<include>>

<<include>>
QuanLyDMBacSy <<include>>
QuanLyNhatKyHeThong
DangNhap
TongQuanTri
QuanTriVien QuanLyChuyenKhoa <<include>>
<<include>>
QuanLyDMPhanQuyen
<<include>>
QuanLyHinhAnh <<include>>

<<include>>
QuanLyTaiKhoan
QuanLyVanBan

<<include>>
<<include>>
QuanLyVideo QuanLyBenhVien

Hình 3-8: UseCase mức tổng quát

3.3.4 Đặc tả UseCase


 UseCase “QuanLyTinTuc”

Biểu đồ Use case

33
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Them
DangNhap
<<include>>
<<extend>>
Sua
<<include>>
<<include>>
<<extend>>

<<include>>
HienThiDanhSach
QuanLyTinTuc Duyet
<<extend>>
TongQuanTri <<include>>
<<extend>>

Xoa <<include>>

<<extend>>

TimKiem

Hình 3-9: UseCase Quản lý tin tức

Tóm tắt
o Người sử dụng: Tổng quản trị
o Chức năng:
 Thêm mới tin tức
 Sửa thông tin tin tức
 Xóa tin tức
 Duyệt tin tức
 Hiển thị danh sách tin tức
o Ý nghĩa: Quản lý tin tức khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Tổng quản trị có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột

34
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

5. Tổng quản trị chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm và các thông tin bắt buộc phải nhập vào
duyệt tin tức) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền tổng quản trị.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách tin tức.
o Thêm, sửa, xóa, duyệt tin thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa, duyệt tin tức
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý danh mục tin tức”

Biểu đồ Use case

DangNhap Them

<<extend>>
<<include>>
<<include>>

<<extend>> Sua
<<include>>

QuanLyDanhMucTin
<<extend>> HienThiDanhSach
<<include>>
TongQuanTri
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-10: UseCase Quản lý danh mục tin tức

Tóm tắt
o Người sử dụng: Tổng quản trị
o Chức năng:

35
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

 Thêm mới danh mục tin tức


 Sửa thông tin danh mục tin tức
 Xóa danh mục tin tức
 Hiển thị danh sách danh mục tin tức
o Ý nghĩa: Quản lý danh mục tin tức khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Tổng quản trị có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5. Tổng quản trị chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục tin tức) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền tổng quản trị.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách danh mục tin tức.
o Thêm, sửa, xóa danh mục tin tức thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa danh mục tin tức
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý nhật ký hệ thống”

Biểu đồ Use case

36
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap
Them

<<extend>> <<include>>
<<include>>
<<extend>> Sua
<<include>>

QuanLyNhatKyHeThong HienThiDanhSach
<<extend>> <<include>>
TongQuanTri
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-11: UseCase Quản lý nhật ký hệ thống

Tóm tắt
o Người sử dụng: Tổng quản trị
o Chức năng:
 Xóa nhật ký hệ thống
 Hiển thị danh sách nhật ký hệ thống
o Ý nghĩa: Xem lịch sử các thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Tổng quản trị có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Tổng quản trị chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (xem, xóa, tìm kiếm nhật ký hệ các thông tin bắt buộc phải nhập vào
thống) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền tổng quản trị.

Trạng thái hệ thống sau khi thực hiện Use-case

37
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

o Hiển thị danh sách nhật ký hệ thống.


o Thêm, sửa, xóa danh sách nhật ký hệ thống thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý danh mục phân quyền”

Biểu đồ Use case

DangNhap

Sua
<<extend>> <<include>>
<<include>>

HienThiDanhSach
QuanLyDMPhanQuyen
<<include>>
TongQuanTri
<<extend>>
Xoa

Hình 3-12: Use case Quản lý danh mục phân quyền

Tóm tắt
o Người sử dụng: Tổng quản trị
o Chức năng:
 Sửa thông tin danh mục phân quyền
 Xóa danh mục phân quyền
 Hiển thị danh sách danh mục phân quyền
o Ý nghĩa: Quản lý danh mục phân quyền khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Tổng quản trị có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ

38
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

quản lý bằng cách dùng bàn phím hay thông tin


chuột
5.Tổng quản trị chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục phân quyền) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền tổng quản trị.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách danh mục phân quyền.
o Thêm, sửa, xóa, duyệt danh mục phân quyền thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa danh mục phân quyền
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý tài khoản”

Biểu đồ Use case

Them
DangNhap
<<include>>
<<extend>>
Sua
<<include>> <<include>>
<<extend>>
<<include>>
<<extend>> HienThiDanhSach
QuanLyTaiKhoan Khoa/MoTaiKhoan

TongQuanTri
<<extend>> <<include>>
Xoa
<<include>>
<<extend>>

TimKiem

Hình 3-13: Use case Quản lý tài khoản

Tóm tắt

39
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

o Người sử dụng: Tổng quản trị


o Chức năng:
 Thêm mới tài khoản
 Sửa thông tin tài khoản
 Xóa tài khoản
 Khóa/mở tài khoản
 Hiển thị danh sách tài khoản
o Ý nghĩa: Quản lý tài khoản khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Tổng quản trị có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Tổng quản trị chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm tài các thông tin bắt buộc phải nhập vào
khoản) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền tổng quản trị.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách tài khoản.
o Thêm, sửa, xóa tài khoản thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa tài khoản
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý bình luận”

Biểu đồ Use case

40
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap

Duyet
<<include>> <<extend>> <<include>>

QuanLyBinhLuan HienThiDanhSach
QuanTriVien <<include>>

<<extend>> Xoa

Hình 3-14: Use case Quản lý bình luận

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Xóa bình luận
 Duyệt bình luận
 Hiển thị danh sách bình luận
o Ý nghĩa: Quản lý danh mục tin tức khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (xóa, duyệt, tìm kiếm bình luận) các thông tin bắt buộc phải nhập vào
hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách bình luận.

41
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

o Xóa, duyệt bình luận thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, xóa, duyệt bình luận
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý danh mục bác sỹ ”

Biểu đồ Use case

DangNhap

Them
<<extend>> <<include>>
<<include>>

<<extend>> Sua <<include>>


QuanLyDMBacSy
HienThiDanhSach
<<extend>> <<include>>
QuanTriVien
Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-15: Use case Quản lý danh mục bác sĩ

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới danh mục bác sỹ
 Sửa thông tin danh mục bác sỹ
 Xóa danh mục bác sỹ
 Hiển thị danh sách danh mục tin tức
o Ý nghĩa: Quản lý danh mục bác sỹ khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống

42
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu


3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục bác sỹ) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách danh mục bác sỹ.
o Thêm, sửa, xóa danh mục bác sỹ thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa bác sỹ
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý bệnh viện”

Biểu đồ Use case

DangNhap Them

<<extend>> <<include>>
<<include>>
<<extend>> Sua <<include>>

QuanLyBenhVien HienThiDanhSach
<<extend>> <<include>>
QuanTriVien
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-16: Use case Quản lý bệnh viện

43
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới bệnh viện
 Sửa thông tin bệnh viện
 Xóa danh mục bệnh viện
 Hiển thị danh sách bệnh viện
o Ý nghĩa: Quản lý thông tin bệnh viện khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục bệnh viện) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách danh mục bệnh viện.
o Thêm, sửa, xóa danh mục bệnh viện thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa bệnh viện
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết
 UseCase “Quản lý chuyên khoa”

Biểu đồ Use case

44
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap Them

<<extend>> <<include>>

<<include>>
Sua <<include>>
<<extend>>
HienThiDanhSach
QuanLyChuyenKhoa <<include>>
<<extend>>
QuanTriVien
Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-17: UseCase Quản lý chuyên khoa

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới chuyên khoa
 Sửa thông tin chuyên khoa
 Xóa danh mục chuyên khoa
 Hiển thị danh sách chuyên khoa
o Ý nghĩa: Quản lý chuyên khoa khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục chuyên khoa) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

45
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách chuyên khoa.
o Thêm, sửa, xóa chuyên khoa thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa chuyên khoa
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý hình ảnh”

Biểu đồ Use case

Them
DangNhap

<<include>>
<<extend>>
<<include>>
Sua
<<extend>> <<include>>

HienThiDanhSach
QuanLyHinhAnh <<include>>
<<extend>>
QuanTriVien Xoa

<<extend>> <<include>>

TimKiem

Hình 3-18: UseCase Quản lý hình ảnh

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới hình ảnh
 Sửa thông tin hình ảnh
 Xóa danh mục hình ảnh
 Hiển thị danh sách hình ảnh
o Ý nghĩa: Quản lý hình ảnh khi có thay đổi.

Dòng sự kiện chính

46
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hành động của tác nhân Phản ứng của hệ thống


1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục hình ảnh) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách hình ảnh.
o Thêm, sửa, xóa hình ảnh thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa hình ảnh
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý văn bản ”

Biểu đồ Use case

47
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Them
DangNhap

<<extend>> <<include>>

<<include>>
Sua
<<include>>

<<extend>>
QuanLyVanBan <<include>> HienThiDanhSach

QuanTriVien <<extend>> Xoa

<<extend>> <<include>>

TimKiem

Hình 3-19: Use case Quản lý văn bản

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới văn bản
 Sửa thông tin văn bản
 Xóa danh mục văn bản
 Hiển thị danh sách văn bản
o Ý nghĩa: Quản lý văn bản khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm danh các thông tin bắt buộc phải nhập vào
mục văn bản) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

48
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách văn bản.
o Thêm, sửa, xóa văn bản thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa văn bản
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết

 UseCase “Quản lý video”

Biểu đồ Use case

DangNhap
Them

<<extend>> <<include>>
<<include>>

<<extend>> Sua <<include>>

QuanLyVideo HienThiDanhSach
<<extend>>
QuanTriVien
<<include>>
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-20: Use case Quản lý video

Tóm tắt
o Người sử dụng: Quản trị viên
o Chức năng:
 Thêm mới video
 Sửa thông tin video
 Xóa danh mục video
 Hiển thị danh sách video
o Ý nghĩa: Quản lý video khi có thay đổi.

Dòng sự kiện chính

49
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hành động của tác nhân Phản ứng của hệ thống


1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Quản trị viên có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Quản trị viên chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm video) các thông tin bắt buộc phải nhập vào
hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách video.
o Thêm, sửa, xóa video thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa video
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết
 UseCase “Đăng bài viết ”

Biểu đồ Use case

DangNhap Them

<<include>>
<<extend>>
<<include>>
Sua <<include>>
<<extend>>
HienThiDanhSach
DangBaiViet <<extend>> <<include>>
NguoiVietBai Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-21: Use case Đăng bài viết

50
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Tóm tắt
o Người sử dụng: Người viết bài
o Chức năng:
 Thêm mới bài viết
 Sửa thông tin bài viết
 Xóa danh mục bài viết
 Hiển thị danh sách bài viết
o Ý nghĩa: Quản lý bài viết khi có thay đổi.

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng nhập 2.Kiểm tra tài khoản và mật khẩu
3.Người viết bài có thể chọn thao tác 4.Hệ thống yêu cầu nhập đầy đủ
quản lý bằng cách dùng bàn phím hay thông tin
chuột
5.Người viết bài chọn từng chức năng 6.Hệ thống hiển thị danh sách gồm
nhỏ (thêm, sửa, xóa, tìm kiếm bài các thông tin bắt buộc phải nhập vào
viết) hệ thống để thực hiện chức năng

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập thành công với quyền quản trị viên.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị danh sách bài viết.
o Thêm, sửa, xóa bài viết thành công hoặc thất bại.

Điểm mở rộng
o Thông tin cơ bản: Hiển thị, thêm mới, sửa, xóa bài viết
o Thông tin chi tiết: Hiển thị, Cập nhật chi tiết
 UseCase “Viết bình luận”
o Người sử dụng: Khách hàng (bệnh nhân)
o Chức năng: Viết bình luận

51
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

o Ý nghĩa: Viết bình luận để đặt câu hỏi thắc mắc, nhận xét, đánh giá bệnh
viện

Dòng sự kiện chính


Hành động của tác nhân Phản ứng của hệ thống
1.Đăng ký đầy đủ tên, email 2. Hệ thống yêu cầu nhập đầy đủ
thông tin
3.Viết bình luận 4.Hệ thống thông báo đăng bình luận
thành công. Vui lòng chờ phản hồi
của người quản trị website.

Trạng thái hệ thống khi bắt đầu thực hiện Use-case


o Yêu cầu đăng nhập họ tên, email.

Trạng thái hệ thống sau khi thực hiện Use-case


o Hiển thị thông báo đăng bình luận thành công. Vui lòng chờ phản hồi

Điểm mở rộng
o Thông tin cơ bản: Hiển thị bình luận. Nếu bình luận đó là phản cảm, gây
hại cho bệnh viện thì không hiển thị trên website
o Thông tin chi tiết: Hiển thị bình luận và câu trả lời phản hồi lại bình luận
hoặc không hiển thị bình luận

52
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.4 Biểu đồ lớp

3.4.1 Biểu đồ lớp (mức phân tích)

Department Doctor Role


Slide
+id +id +id
+id +site_id +department_id +name
+type +name_l +name_l +cssClass
+title_l +description_l +name_e
+title_e +detail_l +specially_l
+description_l +image_path +specially_e
+description_e +language_spoken 1
+active_flag
+image_path +created_by_user_id +quantification_l
+icon +lu_updated +quantification_e
+link 1 +experiences_l
+lu_user_id
+css_class +created_date +experiences_e
+ord +name_e 1..* +specially_interests_l
+active_flag +description_e +specially_interests_e
+site_id 1..*
+detail_e +image_path
+created_date +ord +gender
+link +timetable_l UserGroup
1..* +timetable_e
0..* +alias +id
+background_image +active_flag
+show_on_home +name
1 +ord
0..* +is_partner
Site
+position 1
+id 1 Video +created_date
+name_company_l
+video_id
+name_company_e
+video_title_l
+favicon
+video_description_l
+address_l
+video_title_e
+address_e
+video_description_e
+map AuditSystem
+video_thumbnail
+phone
+video_link
+fax 1 0..* +id
+created_date
+email +user_id
+created_by_user 1
+hotline +action_date
+ord 0..* 0..*
+emergency_number +action_description
+status User
+time_open +action_detail
+site_id
+active_flag 1 +active_flag
+id
+meta_description
+full_name 0..*
+meta_keyword
+user_name 0..*
+ord
1 +password
+created_date News
+email
+id +address
+title_l +image_path
+title_e +gender
Category +alias_l +created_by_user_id
Document
+alias_e 1 +created_date
+id 0..*
+image_path +active_flag +id
+name_l
+detail_l +group_id +category_id
+name_e 0..*
+alias_e +detail_e 1 +type
+alias_l +description_l 0..* +effective_from_date
+image_path +description_e +effective_to_date
+description_l +category_id +document_name
+description_e +ord +document_code
+parent_id +created_by_user_id +document_date
0..*
+menu_id +created_date +attach_file_path
+ord +lu_updated +bin_location
1 +description
+created_by_user +active_flag
+lu_user_id +hot_new +owner
1 Comment
+created_date +show_on_home +approved_date
+lu_updated +meta_description 0..* +id +approved_by
+active_flag +meta_keyword +new_id +created_by_user_id
+show_on_home +views +user_name +created_date_time
+link +copyright +email +lu_user_id
+type +site_id +message +lu_updated
+theme_type +type +created_date +active_flag
+site_id +link +active_flag +site_id
+level +department_id

Hình 3-22: Biểu đồ lớp mức phân tích

53
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.4.2 Danh sách các lớp đối tượng và quan hệ

Bảng 3-5: Danh sách các lớp đối tượng và quan hệ

STT Tên lớp/quan hệ Loại Ý nghĩa/Ghi chú

1. AuditSystem Lớp nhật ký hệ thống


2. Category Lớp danh mục tin tức
3. Comment Lớp bình luận
4. Department Lớp chuyên khoa
5. Doctor Lớp danh mục bác sỹ
6. Document Lớp văn bản
7. News Lớp tin tức
8. Role Lớp danh mục phân quyền
9. Site Lớp bệnh viện
10. Slide Lớp hình ảnh
11. User Lớp tài khoản
12. UserGroup Lớp nhóm tài khoản
13. Video Lớp video

3.4.3 Mô tả chi tiết từng lớp đối tượng


 Lớp AuditSystem

Bảng 3-6: Mô tả chi tiết lớp nhật ký hệ thống

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


1. id uniqueidentifier Khóa chính Mã nhật ký hệ thống

user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


2.
nhập
3. action_date datetime Thời gian hoạt động

54
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

4. action_description nvarchar(500) Mô tả hành động

5. action_detail ntext Chi tiết hành động

6. active_flag int Trạng thái

 Lớp Category

Bảng 3-7: Mô tả chi tiết lớp danh mục tin tức

ST
Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
T
1. id uniqueidentifier Khóa chính Mã danh mục tin tức

name_l nvarchar(250) Tên danh mục tin tức


2.
tiếng Việt

name_e nvarchar(250) Tên danh mục tin tức


3.
tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức

5. image_path nvarchar(500) Đường dẫn ảnh

6. description_l ntext Mô tả bằng tiếng Việt

7. description_e ntext Mô tả bằng tiếng Anh

8. parent_id uniqueidentifier Mã danh mục cha

9. ord int Thứ tự sắp xếp

10. created_by_user uniqueidentifier Người tại bài viết

Khóa ngoại Mã người dùng đăng


11. lu_user_id uniqueidentifier
nhập gần nhất
12. created_date datetime Thời gian tạo

13. lu_updated datetime Lần sửa gần nhất

55
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

14. active_flag int Trạng thái

15. show_on_home bit Hiển thi trên trang chủ

16. hot_category bit Tin nổi bật

17. link nvarchar(500) Đường dẫn

18. type varchar(60) Tên chủ đề

19. theme_type varchar(50) Loại chủ để

20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

21. level int Cấp menu

 Lớp Comment

Bảng 3-8: Mô tả chi tiết lớp bình luận

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


1 id uniqueidentifier Khóa chính Mã bình luận

2 new_id uniqueidentifier Khóa ngoại Mã tin tức

3 user_name nvarchar(150) Khóa ngoại Tên người bình luận

4 email nvarchar(150) Email người bình luận

5 message ntext Nội dung bình luận

6 created_date datetime Thời gian tạo bình luận

7 active_flag int Trạng thái

56
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

 Lớp Department

Bảng 3-9: Mô tả chi tiết lớp chuyên khoa

ST
Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
T
1. id uniqueidentifier Khóa chính Mã chuyên khoa

2. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3. name_l nvarchar(250) Tên tiếng Việt

4. description_l nvarchar(500) Mô tả bằng tiếng Việt

5. detail_l ntext Chi tiết

6. image_path nvarchar(500) Đường dẫn ảnh

7. active_flag int Trạng thái

8. created_by_user_id uniqueidentifier Khóa ngoại Mã người dùng tạo


chuyên khoa
9. lu_updated datetime Thời gian sửa gần nhất

10. lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


nhập gần nhất
11. created_date datetime Ngày tạo

12. name_e nvarchar(250) Tên tiếng Anh

13. description_e nvarchar(500) Mô tả bằng tiếng Anh

14. detail_e ntext Chi tiết bằng tiếng Anh

ord int Vị trí sắp xếp trên trang


15.
chủ
16. link nvarchar(500) Đường dẫn

57
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

17. alias nvarchar(350) Tên hiệu chuyên khoa

18. background_image nvarchar(500) ảnh nền

 Lớp Doctor

Bảng 3-10: : Mô tả chi tiết lớp bác sỹ

ST
Tên thuộc tính Loại Ràng buộc Ý nghĩa/ ghi chú
T
1. id uniqueidentifier Khóa chính Mã bác sỹ

2. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa

3. name_l nvarchar(250) Tên tiếng Việt

4. name_e nvarchar(250) Tên tiếng Anh

5. language_spoken nvarchar(150) Ngôn ngữ

quantification_l nvarchar(500) Các chứng nhận bằng


6.
tiếng Việt

quantification_e nvarchar(500) Các chứng nhận bằng


7.
tiếng Anh

experiences_l nvarchar(500) Kinh nghiệm bằng


8.
tiếng Việt

experiences_e nvarchar(500) Kinh nghiệm bằng


9.
tiếng Anh

specially_interests_l nvarchar(500) Lĩnh vực chuyên sâu


10.
bằng tiếng Viết

specially_interests_e nvarchar(500) Lĩnh vực chuyên sâu


11.
bằng tiếng Anh
12. image_path nvarchar(500) Đường dẫn ảnh

13. gender int Giới tính

58
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

timetable_l ntext Thời gian làm việc


14.
bằng tiếng Việt

timetable_e ntext Thời gian làm việc


15.
bằng tiếng Anh
16. active_flag int Trạng thái

show_on_home bit Hiển thị trên trang


17.
chủ không
18. ord int Thứ tự sắp xếp

is_partner bit Là bác sỹ cộng tác


19.
không
20. created_date datetime Ngày tạo

 Lớp Document

Bảng 3-11: Mô tả chi tiết lớp văn bản

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ ghi chú
1. id uniqueidentifier Khóa chính Mã tài liệu
2. category_id uniqueidentifier Khóa ngoại Mã danh mục tin tức
3. type int Loại tài liệu
4. effective_from_date datetime Ngày có hiệu lực
5. effective_to_date datetime Ngày hết hiệu lực
6. document_name nvarchar(500) Tên tài liệu
7. document_code nvarchar(100) Số quyết đinh
8. document_date datetime Ngày quyết định
9. attach_file_path varchar(500) Đường dẫn file
10. bin_location varchar(500) /file

59
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

11. description ntext Mô tả


12. owner nvarchar(500) Đơn vị sở hữu
13. approved_date datetime Ngày phê duyệt
14. approved_by nvarchar(250) Người phê duyệt
15. created_by_user_id uniqueidentifier Khóa ngoại Người tạo
16. created_date_time datetime Thời gian tạo

lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


17.
nhập gần nhất
18. lu_updated datetime Ngày sửa gần nhất
19. active_flag int Trạng thái
20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
 Lớp New

Bảng 3-12: Mô tả chi tiết lớp tin tức

ST
Tên thuộc tính Loại Ràng buộc Ý nghĩa/ ghi chú
T
1. id uniqueidentifier Khóa chính Mã tin tức
2. title_l nvarchar(250) Tiêu đề bằng tiếng Việt
3. title_e nvarchar(250) Tiêu đề bằng tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức
5. image_path nvarchar(500) Đường dẫn ảnh
6. detail_l ntext Chi tiết bằng tiếng Việt
7. detail_e ntext Chi tiết bằng tiếng Anh
8. description_l ntext Mô tả bằng tiếng Việt

60
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

9. description_e ntext Mô tả bằng tiếng Anh


10. category_id uniqueidentifier Khóa ngoại Mã danh mục tin tức
11. ord int Vị trí sắp xếp tin
12. created_by_user_id uniqueidentifier Khóa ngoại Mã người tạo
13. created_date datetime Ngày tạo
14. lu_updated datetime Lần sửa gần nhất
15. active_flag int Trạng thái
16. hot_new bit Tin nổi bật không

show_on_home bit Hiển thị trên trang chủ


17.
không
18. meta_description ntext Thẻ mô tả
19. meta_keyword ntext Thẻ từ khóa
20. views int Số lượt xem
21. copyright nvarchar(500) Nguồn tin
22. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
23. type varchar(50) Loại tin tức
24. link nvarchar(500) Đường dẫn tin tức
25. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa
 Lớp Role

Bảng 3-13: Mô tả chi tiết lớp phân quyền

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


1 id Nvarchar(50) Khóa chính Mã phân quyền
2 name Nvarchar(100) Tên quyền
 Lớp Site
61
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Bảng 3-14: Mô tả chi tiết lớp danh mục bệnh viện

ST Tên thuộc tính Loại Ràng buộc Ý nghĩa/ ghi chú


T
1. id uniqueidentifier Khóa chính Mã bệnh viện
2. name_company_l nvarchar(250) Tên tiếng Việt
3. name_company_e nvarchar(250) Tên tiếng Anh
4. favicon nvarchar(500)
5. address_l nvarchar(500) Địa chỉ bằng tiếng Việt
6. address_e nvarchar(500) Địa chỉ bằng tiếng Anh
7. map nvarchar(500) Bản đồ
8. phone nvarchar(50) Số điện thoại bàn
9. fax nvarchar(50) Số fax
10. email nvarchar(50) Đại chỉ email
11. hotline nvarchar(50) Đường dây nong
12. emergency_number nvarchar(50) Số cấp cứu
13. active_flag int Trạng thái
14. meta_description ntext Thẻ mô tả
15. meta_keyword ntext Thẻ từ khóa
16. ord int Vị trí sắp xếp
17. created_date datetime Ngày tạo
 Lớp Slide

Bảng 3-15: Mô tả chi tiết lớp hình ảnh

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú

62
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

1. id uniqueidentifier Khóa chính Mã hình ảnh


2. type varchar(50) Loại hình ảnh
3. title_l nvarchar(250) Tiêu đề tiếng Việt
4. title_e nvarchar(250) Tiêu đề tiếng Anh
5. description_l nvarchar(250) Mô tả bằng tiếng Việt
6. description_e nvarchar(250) Mô tả bằng tiếng Anh
7. image_path nvarchar(500) Đường dẫn ảnh
8. link nvarchar(150) #
9. ord int Vị trí sắp xếp
10. active_flag int Trạng thái
11. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
12. created_date datetime Ngày tạo
 Lớp User

Bảng 3-16: Mô tả chi tiết lớp quản trị viên

ST Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


T
1. id uniqueidentifier Khóa chính Mã quản trị viên
2. full_name nvarchar(150) Họ tên quản trị viên
3. user_name nvarchar(250) Tên đăng nhập
4. password varchar(32) Mật khẩu
5. email nvarchar(250) Email
6. address nvarchar(250) Địa chỉ
7. image_path nvarchar(500) Đường dẫn ảnh

63
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

8. gender int Giới tính


9. created_by_user_id uniqueidentifier Khóa ngoại Mã người tạo
10. created_date datetime Ngày tạo
11. active_flag int Trạng thái
12. group_id varchar(20) Nhóm quyền
 Lớp UserGroup

Bảng 3-17: Mô tả chi tiết lớp nhóm người dùng

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


1 id Nvarchar(20) Khóa chính Mã nhóm quyền
2 name Nvarchar(150) Khóa ngoại Tên nhóm quyền
 Lớp Video

Bảng 3-18: Mô tả chi tiết lớp video

ST Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú


T
1. video_id uniqueidentifier Khóa chính Mã video
2. video_title_l nvarchar(250) Tiêu đề tiếng Việt
3. video_description_l nvarchar(500) Mô tả bằng tiếng Việt
4. video_title_e nvarchar(250) Tiêu đề tiếng Anh
5. video_description_e nvarchar(500) Mô tả bằng tiếng Anh
6. video_thumbnail nvarchar(500) Đường dẫn đến video
7. video_link nvarchar(500) Link video
8. created_date datetime Ngày tạo
9. created_by_user uniqueidentifier Khóa ngoại Mã người tạo

64
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

10. ord int Vị trí sắp xếp


11. status int Trạng thái
12. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3.5 Biểu đồ tuần tự

3.5.1 Đăng nhập

: User :FrmDangNhap :CtrlDangNhap :CSDL

1 : YeuCauDangNhap()
2 : YeuCau()

3 : HienThiTrangDangNhap

4 : NhapTenTaiKhoanVaMatKhau()
5 : KiemTraCacTruongDuLieu()

6 : GuiThongTinTaiKhoan()
7 : TruyVanKiemTraThongTn()

8 : GuiKetQuaTruyVan

9 : KiemTraXacMinhQuyen
seq KiemTraTonTaiCuaTaiKhoan

10 : HienThiTrangTuongUngVoiQuyen

11 : OLaiTrangDangNhapVaThognBaoLoi

Hình 3-23: Biểu đồ tuần tự Đăng nhập

65
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.2 Thêm Tin tức

: NguoiVietBai :FrmQuanLyTinTuc :CtrlQuanLyTinTuc :DanhMucTin :TinTuc :QuanTriWebsite

1 : YeuCauChucNang()
2 : LayDanhMucTin()
3 : LayDanhMucTin()

5 4

6 : NhapThongTinTinTuc()
7 : DanhMaTuDong()
8 : ThemTinTuc()
9 : DuyetTinTuc()

10
11
12

Hình 3-24: Biểu đồ tuần tự Thêm tin tức

3.5.3 Sửa Tin tức

:FrmQuanLyTinTuc :CtrlQuanLyTinTuc :TinTuc :DanhMucTin :TongQuanTri


: NguoiVietBai

1 : ChonTinTucCanSua()
2 : LayThongTinTinTuc() 3 : LayThongTinTinTuc()

5 4

6 : LayThongTinDanhMucTin()
7 : LayThongTinDanhMucTin()

8
9
10 : YeuCauCapNhat

11 : CapNhatThongTinTinTuc()
12 : CapNhatTinTuc()
13 : CapNhatTinTuc()
14 : DuyenTinTuc()

15
16
17
18

Hình 3-25: Biểu đồ tuần tự Sửa tin tức

66
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.4 Xóa Tin tức

: NguoiVietBai :FrmQuanLyTinTuc :CtrlQuanLyTinTuc :TinTuc

1 : ChonTinTuc()

2 : XacNhanXoa

opt XacNhanXoa

3 : ChonXoa()
4 : XacNhanXoa()
5 : XoaTinTuc()

7 6
8

9 : KhongXoa()
10 : KhongXoa() <<destroy>>
11 : Huy()

Hình 3-26: Biểu đồ tuần tự Xóa tin tức

67
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.5 Thêm bệnh viện

: TongQuanTri :FrmQuanLyBenhVien :CtrlQuanLyBenhVien :BenhVien

1 : YeuCauChucNang()

2 : YeuCauNhapThongTinBenhVien

3 : NhapThongTinBenhVien()
4 : DanhMaTuDong()
5 : ThemBenhVien()

6
7
8

Hình 3-27: Biểu đồ tuần tự Thêm bệnh viện

3.5.6 Sửa bệnh viện

: TongQuanTri :FrmQuanLyBenhVien :CtrlQuanLyBenhVien :BenhVien

1 : ChonBenhVien()
2 : LayThongTinBenhVien()
3 : LayThongTinBenhVien()

5 4
6 : YeuCauNhapThongTinMoi

7 : NhapThongTinMoi()
8 : CapNhatThongTin()
9 : CapNhatThongTin()

10
11
12

Hình 3-28: Biểu đồ tuần tự Sửa bệnh viện

68
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.7 Xóa bệnh viện

: TongQuanTri :FrmQuanLyBenhVien :CtrlQuanLyBenhVien :BenhVien

1 : ChonBenhVien()
2 : LayThongTinBenhVien()
3 : LayThongTinBenhVien()

5 4
6 : YeuCauXacNhanXoa

opt XacNhanXoa
7 : XacNhanXoa()
8 : XacNhanXoa()
9 : XoaBenhVien()

10
11
12

13 : KhongXoa() <<destroy>>
14 : KhongXoa()
15 : Huy()

Hình 3-29: Biểu đồ tuần tự Xóa bệnh viện

69
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.8 Thêm Bác sĩ

: QuanTriVien :BacSi
:FrmQuanLyBacSi :CtrlQuanLyBacSi

1 : YeuCauChucNang()

2 : YeuCauNhapThongTinBacSi

3 : NhapThongTinBacSi()
4 : DanhMaTuDong()
5 : ThemBacSi()

6
7
8

Hình 3-30: Biểu đồ tuần tự Thêm bác sĩ

3.5.9 Sửa thông tin bác sĩ

:FrmQuanLyBacSi :CtrlQuanLyBacSi :BacSi


: QuanTriVien

1 : ChonBacSi()
2 : LayThongTinBacSi()
3 : LayThongTinBacSi()

5 4
6 : YeuCauNhapThongTinMoi

7 : NhapThongTinMoi()
8 : CapNhatThongTin()
9 : CapNhatThongTin()

10
11
12

Hình 3-31: Biểu đồ tuần tự Sửa thông tin bác sĩ

70
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.10 Xóa bác sĩ

:CtrlQuanLyBacSi :BacSi
: QuanTriVien :FrmQuanLyBacSi

1 : ChonBacSi()
2 : LayThonTinBacSi()
3 : LayThongTinBacSi()

4
5
6 : YeuCauXacNhanXoa

opt XacNhanXoa
7 : XacNhanXoa()
8 : XacNhanXoa()
9 : XoaBacSi()

10
11
12

13 : KhongXoa()
14 : KhongXoa() <<destroy>>
15 : Huy()

Hình 3-32: Biểu đồ tuần tự Xóa bác sĩ

3.6 Thiết kế cơ sở dữ liệu của hệ thống

Sau quá trình thiết kế, em đã xác định mô hình câu trúc của website trên database
như sau:

71
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-33: Mô hình dữ liệu quan hệ

72
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.6.1 Bảng AuditSystem

Lưu trữ thông tin nhật ký hệ thống của người dùng

Bảng 3-1: Bảng AuditSystem

Ràng
STT Tên trường Kiểu dữ liệu Mô tả
buộc
1. id uniqueidentifier Khóa chính Mã nhật ký hệ thống

2. user_id uniqueidentifier Khóa ngoại Mã người dùng

3. action_date datetime Thời gian hoạt động

4. action_description nvarchar(500) Mô tả hành động

5. action_detail ntext Chi tiết hành động

6. active_flag int Trạng thái

3.6.2 Bảng Category

Lưu trữ thông tin danh mục tin tức

Bảng 3-2: Bảng Category

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã danh mục tin tức

2. name_l nvarchar(250) Tên danh mục tin tức


tiếng Việt
3. name_e nvarchar(250) Tên danh mục tin tức
tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức

5. image_path nvarchar(500) Đường dẫn ảnh

6. description_l ntext Mô tả bằng tiếng Việt

7. description_e ntext Mô tả bằng tiếng Anh

73
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

8. parent_id uniqueidentifier Mã danh mục cha

9. ord int Thứ tự sắp xếp

10. created_by_user uniqueidentifier Người tại bài viết

11. lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


nhập gần nhất
12. created_date datetime Thời gian tạo

13. lu_updated datetime Lần sửa gần nhất

14. active_flag int Trạng thái

15. show_on_home bit Hiển thi trên trang


chủ
16. hot_category bit Tin nổi bật

17. link nvarchar(500) Đường dẫn

18. type varchar(60) Tên chủ đề

19. theme_type varchar(50) Loại chủ để

20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

21. level int Cấp menu

3.6.3 Bảng Comment

Lưu trữ thông bình luận.

Bảng 3-3: Bảng Comment

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã bình luận

2. new_id uniqueidentifier Khóa ngoại Mã tin tức

3. user_name nvarchar(150) Khóa ngoại Tên người bình luận

74
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

4. email nvarchar(150) Email người bình luận

5. message ntext Nội dung bình luận

6. created_date datetime Thời gian tạo bình luận

7. active_flag int Trạng thái

3.6.4 Bảng Department

Lưu trữ thông tin chuyên khoa


Bảng 3-4: Bảng Department

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã chuyên khoa

2. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3. name_l nvarchar(250) Tên tiếng Việt

description_l nvarchar(500) Mô tả bằng tiếng


4.
Việt
5. detail_l ntext Chi tiết

6. image_path nvarchar(500) Đường dẫn ảnh

7. active_flag int Trạng thái

created_by_user_id uniqueidentifier Khóa ngoại Mã người dùng tạo


8.
chuyên khoa

lu_updated datetime Thời gian sửa gần


9.
nhất

lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


10.
nhập gần nhất
11. created_date datetime Ngày tạo

12. name_e nvarchar(250) Tên tiếng Anh

75
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

description_e nvarchar(500) Mô tả bằng tiếng


13.
Anh

detail_e ntext Chi tiết bằng tiếng


14.
Anh

ord int Vị trí sắp xếp trên


15.
trang chủ
16. link nvarchar(500) Đường dẫn

alias nvarchar(350) Tên hiệu chuyên


17.
khoa
18. background_image nvarchar(500) Ảnh nền

3.6.5 Bảng Doctor

Lưu trữ thông tin cảu bác sĩ

Bảng 3-5: Bảng Doctor

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã bác sỹ

2. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa

3. name_l nvarchar(250) Tên tiếng Việt

4. name_e nvarchar(250) Tên tiếng Anh

5. language_spoken nvarchar(150) Ngôn ngữ

quantification_l nvarchar(500) Các chứng nhận bằng


6.
tiếng Việt

quantification_e nvarchar(500) Các chứng nhận bằng


7.
tiếng Anh

experiences_l nvarchar(500) Kinh nghiệm bằng tiếng


8.
Việt
9. experiences_e nvarchar(500) Kinh nghiệm bằng tiếng

76
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Anh

specially_interests_l nvarchar(500) Lĩnh vực chuyên sâu


10.
bằng tiếng Việt

specially_interests_e nvarchar(500) Lĩnh vực chuyên sâu


11.
bằng tiếng Anh
12. image_path nvarchar(500) Đường dẫn ảnh

13. gender int Giới tính

timetable_l ntext Thời gian làm việc bằng


14.
tiếng Việt

timetable_e ntext Thời gian làm việc bằng


15.
tiếng Anh
16. active_flag int Trạng thái

show_on_home bit Hiển thị trên trang chủ


17.
không
18. ord int Thứ tự sắp xếp

is_partner bit Là bác sỹ cộng tác


19.
không
20. created_date datetime Ngày tạo

3.6.6 Bảng Document

Lưu trữ thông tin văn bản của bệnh viện

Bảng 3-6: Bảng Document

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã tài liệu

category_id uniqueidentifier Khóa ngoại Mã danh mục tin


2.
tức

77
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3. type int Loại tài liệu


4. effective_from_date datetime Ngày có hiệu lực
5. effective_to_date datetime Ngày hết hiệu lực
6. document_name nvarchar(500) Tên tài liệu
7. document_code nvarchar(100) Số quyết đinh
8. document_date datetime Ngày quyết định
9. attach_file_path varchar(500) Đường dẫn file
10. bin_location varchar(500) /file
11. description ntext Mô tả
12. owner nvarchar(500) Đơn vị sở hữu
13. approved_date datetime Ngày phê duyệt
14. approved_by nvarchar(250) Người phê duyệt
15. created_by_user_id uniqueidentifier Khóa ngoại Người tạo
16. created_date_time datetime Thời gian tạo

lu_user_id uniqueidentifier Khóa ngoại Mã người dùng


17.
đăng nhập gần nhất
18. lu_updated datetime Ngày sửa gần nhất
19. active_flag int Trạng thái
20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3.6.7 Bảng News

Lưu trữ thông tin tin tức của bệnh viện.

78
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Bảng 3-7: Bảng News

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã tin tức
2. title_l nvarchar(250) Tiêu đề bằng tiếng Việt
3. title_e nvarchar(250) Tiêu đề bằng tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức
5. image_path nvarchar(500) Đường dẫn ảnh
6. detail_l ntext Chi tiết bằng tiếng Việt
7. detail_e ntext Chi tiết bằng tiếng Anh
8. description_l ntext Mô tả bằng tiếng Việt
9. description_e ntext Mô tả bằng tiếng Anh
10. category_id uniqueidentifier Khóa ngoại Mã danh mục tin tức
11. ord int Vị trí sắp xếp tin

created_by_user_i uniqueidentifier Khóa ngoại Mã người tạo


12.
d
13. created_date datetime Ngày tạo
14. lu_updated datetime Lần sửa gần nhất
15. active_flag int Trạng thái
16. hot_new bit Tin nổi bật không

show_on_home bit Hiển thị trên trang chủ


17.
không
18. meta_description ntext Thẻ mô tả
19. meta_keyword ntext Thẻ từ khóa

79
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

20. views int Số lượt xem


21. copyright nvarchar(500) Nguồn tin
22. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
23. type varchar(50) Loại tin tức
24. link nvarchar(500) Đường dẫn tin tức
25. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa

3.6.8 Bảng Role

Lưu trữ thông tin phân quyền người dùng

Bảng 3-8: Bảng Role

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1 id Nvarchar(50) Khóa chính Mã phân quyền
2 name Nvarchar(100) Tên quyền

3.6.9 Bảng Site

Lưu trữ thông tin bệnh viện

Bảng 3-9: Bảng Site

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã bệnh viện
2. name_company_l nvarchar(250) Tên tiếng Việt
3. name_company_e nvarchar(250) Tên tiếng Anh
4. favicon nvarchar(500)
5. address_l nvarchar(500) Địa chỉ bằng tiếng

80
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Việt

address_e nvarchar(500) Địa chỉ bằng tiếng


6.
Anh
7. map nvarchar(500) Bản đồ
8. phone nvarchar(50) Số điện thoại bàn
9. fax nvarchar(50) Số fax
10. email nvarchar(50) Đại chỉ email
11. hotline nvarchar(50) Đường dây nong
12. emergency_number nvarchar(50) Số cấp cứu
13. active_flag int Trạng thái
14. meta_description ntext Thẻ mô tả
15. meta_keyword ntext Thẻ từ khóa
16. ord int Vị trí sắp xếp
17. created_date datetime Ngày tạo

3.6.10 Bảng Slide

Lưu trữ thông tin hình ảnh silde

Bảng 3-10: Bảng Slide

ST Tên trường Kiểu dữ liệu Ràng buộc Mô tả


T
1. id uniqueidentifier Khóa chính Mã hình ảnh
2. type varchar(50) Loại hình ảnh
3. title_l nvarchar(250) Tiêu đề tiếng Việt
4. title_e nvarchar(250) Tiêu đề tiếng Anh

81
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

5. description_l nvarchar(250) Mô tả bằng tiếng Việt


6. description_e nvarchar(250) Mô tả bằng tiếng Anh
7. image_path nvarchar(500) Đường dẫn ảnh
8. link nvarchar(150) link
9. ord int Vị trí sắp xếp
10. active_flag int Trạng thái
11. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
12. created_date datetime Ngày tạo

3.6.11 Bảng User

Lưu trữ thông tin tài khoản người dùng

Bảng 3-11: Bảng User

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã quản trị viên
2. full_name nvarchar(150) Họ tên quản trị viên
3. user_name nvarchar(250) Tên đăng nhập
4. password varchar(32) Mật khẩu
5. email nvarchar(250) Email
6. address nvarchar(250) Địa chỉ
7. image_path nvarchar(500) Đường dẫn ảnh
8. gender int Giới tính
9. created_by_user_id uniqueidentifier Khóa ngoại Mã người tạo

82
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

10. created_date datetime Ngày tạo


11. active_flag int Trạng thái
12. group_id varchar(20) Nhóm quyền

3.6.12 Bảng UserGroup

Lưu thông tin nhóm tài khoản

Bảng 3-12: Bảng UserGroup

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id varchar(20) Khóa chính Mã nhóm tài khoản
2. full_name nvarchar(150) Tên nhóm tài khoản

3.6.13 Bảng Credential

Lưu thông tin nhóm tài khoản

Bảng 3-13: Bảng UserGroup

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T

1 user_group_id varchar(20) Khóa ngoại Mã nhóm tài khoản

2 role_id nvarchar(150) Khóa ngoại Mã phân quyền

3.6.14 Bảng Video

Lưu thông tin video

Bảng 3-14: Bảng Video

ST Tên trường Kiểu dữ liệu Ràng buộc Mô tả


T
1. video_id uniqueidentifier Khóa chính Mã video

83
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2. video_title_l nvarchar(250) Tiêu đề tiếng Việt


3. video_description_l nvarchar(500) Mô tả bằng tiếng Việt
4. video_title_e nvarchar(250) Tiêu đề tiếng Anh
5. video_description_e nvarchar(500) Mô tả bằng tiếng Anh
6. video_thumbnail nvarchar(500) Đường dẫn đến video
7. video_link nvarchar(500) Link video
8. created_date datetime Ngày tạo
9. created_by_user uniqueidentifier Khóa ngoại Mã người tạo
10. ord int Vị trí sắp xếp
11. status int Trạng thái
12. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

84
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.7 Thiết kế đặc tả giao diện

3.7.1 Một số giao diện chính của hệ thống

Hình 3-34: Giao diện trang chủ trên website

- Giao diện trang chủ người dùng bao gồm địa chỉ, số điện thoại cấp cứu,
đường dây nóng, facebook, logo của bệnh viện, menu chính, slide quảng bá hình
ảnh cho bệnh viện; ba box hình chữ nhật về dịch vụ bảo hiểm, tra cứu kết quả hình
ảnh, thời gian làm việc; box chức năng tìm kiếm, tra cứu dịch vụ, box lý do chọn
chúng tôi; cơ sở vật chất; video; đội ngũ bác sĩ; dịch vụ nổi bật; tin tức nổi bật; đăng
ký dịch vụ.

85
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-35: Giao diện cơ sở vật chất, video, đội ngũ bác sĩ

86
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

- Giao diện đội ngũ bác sỹ gồm hai tab là Bác sĩ nội viện và Bác sĩ ngoại viện.
Mỗi tab là các box hình ảnh và thông tin tên bác sĩ, chuyên khoa chính bác sĩ đang
làm việc. Muốn xem chi tiết các thông tin của bác sĩ nào thì click vào hình ảnh đó

Hình 3-36: Giao diện thông tin chi tiết bác sĩ

- Giao diện chi tiết bác sỹ gồm tên, chức danh, chuyên khoa, học vẫn, các hoạt
động chuyên ngành và các đề tài nghiên cứu của bác sĩ

87
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-37: Giao diện chi tiết tin tức

- Giao diện chi tiết một bài đăng tin tức bao gồm: tiêu đề, ngày đăng, số lượt
xem, nội dung tin tức, bình luận của người đọc, các tin tức mới

88
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-38: Giao diện trang liên hệ và chân trang

- Giao diện trang liên hệ bao gồm bản đồ; họ tên, số điện thoại, email, nội
dung phản hồi của khách hàng. Chân trang bao gồm logo, tên bệnh viện, địa chỉ, số
điện thoại, số fax, email, facebook, youtobe của bệnh viện, và bản đồ chỉ đường đến
bệnh viện.

89
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.6.2 Một số giao diện chính của CMS

Hình 3-39: Giao diện đăng nhập tài khoản trên Website

- Giao diện trang đăng nhập, cung cấp chức năng đăng nhập cho người dùng,
bao gồm các trường: tên đăng nhập, mật khẩu.Yêu cầu người dùng nhập đúng tên
đang nhập và mật khẩu mà người tổng quan trị cung cấp qua email. Khi người dùng
click vào nút “Đăng nhập” Website sẽ hiển thị thông báo đăng nhập thành công và
chuyển đến CMS của Website.

90
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-40: Giao diện trang chủ trên CMS

- Giao diện trang chủ CMS thực hiện các chức năng: Quản lý danh mục tin
tức, Quản lý tin tức, Quản lý hình ảnh, Quản lý video, Quản lý văn bản, Các danh
mục khác (Quản lý bệnh viện, chuyên khoa, bác sỹ, bình luận), Cấu hình hệ thống
(Nhật ký hệ thống, Quản lý tài khoản, Phân quyền).

Hình 3-41: Giao diện trang hiển thị danh mục tin tức trên Website

91
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

- Giao diện trang chi tiết Danh mục tin tức bao gồm các chức năng: hiển thị
danh sách danh mục tin tức, thêm, sửa, xóa danh mục tin tức, ẩn/ hiện, ẩn/hiển trên
trang chủ. Khi người dùng click vào “Xóa” Website sẽ hiển thị thông báo “Bạn chắc
chắn muốn xóa danh mục tin tức này không?” Nếu chọn “Xóa”, mục tin tức đó sẽ
được xóa khỏi CMS và trang chủ; chọn “Hủy” để hủy hành động xóa mục tin tức.
Khi danh mục tin tức ở chế độ “Ẩn” thì các bài viết trong “Quản lý tin tức không
thể kế thừa được” và ngược lại khi chọn “Hiện”. Khi chọn “Ẩn trên trang chủ”thì
danh mục đó không hiển thị trên trang chủ và ngược lại khi chọn “Hiển thị trên
trang chủ”.

Hình 3-42: Giao diện danh sách tin đã đăng

- Giao diện quản lý tin tức bao gồm: tin đã đăng, tin chờ duyệt, tin không
duyệt và tin đã xóa.Có các chức năng như: thêm, sửa, xóa, tìm kiếm tin tức, ẩn/ hiện
tin tức trên trang chủ. Khi chọn “Xóa” sẽ hiển thị thông báo “Bạn chắc chắn muốn
92
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

xóa tin tức này không?”,chọn “Hủy” để hủy hành động xóa, nếu chọn xóa thì tin tức
đó sẽ thành tin chờ duyệt. Nếu xóa tin tức đó trong phần “Tin chờ duyệt” thì tin tức
đó sẽ chuyển đến phần“Tin đã xóa”, nếu xóa tin tức ở phần này thì không thể khôi
phục được. Trong phần “Tin đã xóa” có chức năng “Khôi phục” các tin đã xóa và
xóa vĩnh viễn một tin tức nào đó.

Hình 3-43: Giao diện thêm mới tin tức

- Giao diện Thêm mới tin tức: Người viết bài cần chọn tin tức đó thuộc “Danh
mục tin tức nào”, chọn Bệnh viện (nếu không chọn thì tin tức đó sẽ có ở tất cả các

93
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

site bệnh viện), chọn Chuyên khoa (nếu chọn thì tin tức đó sẽ hiển thị cả trong
chuyên khoa đó), thẻ từ khóa, thẻ mô tả phục vụ cho việc SEO website.

Hình 3-44: Giao diện trang chỉnh sửa tin tức

- Giao diện chỉnh sửa tin tức: Click button “Cập nhật” thì tin tức đó được load
lại nội dung lên một trang mới cho tổng quản trị thay đổi. Khi tổng quản trị click
vào “Cập nhật” nội dung bài viết sẽ được lưu lại.

94
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-45: Giao diện trang Nhật ký hệ thống

- Giao diện trang nhật ký hệ thống bao gồm các hành động của User, chi tiết
hành động của User và ngày giời thực hiện hành động đó

95
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 4: KẾT LUẬN

4.1 Kết quả đạt được của đề tài


- Tìm hiểu, nắm bắt được các công cụ thiết kế web
- Biết được cách thiết kế web động và cách tổ chức dữ liệu
- Giao diện web đẹp, thân thiện với người dùng
- Các dịch vụ trên internet đặc biệt là web
- Cho phép người dùng tìm kiếm thông tin bác sỹ, các dịch vụ của bệnh viện,
các bài viết
- Cập nhất các bài viết mới, thông tin mới

4.2 Hạn chế của đề tài

Hệ thống mới chỉ dừng lại ở các chức năng cơ bản, chưa có nhiều cơ chế bảo
mật API.

4.3 Hướng phát triển của đề tài

Trong thời gian nghiên cứu và thực hiện đề tài, tác giả đã vạch ra được hướng
phát triển tiếp theo của đề tài như sau:

 Bổ sung bảo mật API để nâng cao bảo mật của ứng dụng tránh bị tấn
công và lấy dữ liệu

 Tối ưu hóa giao diện và hiệu năng nhằm tăng tốc độ của ứng dụng

 Hỗ trợ trên nền tảng android

96
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

TÀI LIỆU THAM KHẢO

[1] Adam Freeman, Pro ASP.NET MVC 5. American: Apress, 2013.

[2] Nguyễn Văn Quyết, Giáo trình Công nghệ Web và ứng dụng. Hưng Yên, Việt
Nam: Khoa Công nghệ Thông tin - UTEHY, 2010.

97

You might also like