Tải bản đầy đủ (.docx) (55 trang)

BaoCao webhoctienganh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (919.05 KB, 55 trang )

ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN

TRƯỜNG ĐẠI HỌC
CÔNG
NGHỆ
GIAO THÔNG VẬN TẢI
và tên
sinh viên>
KHOA CÔNG NGHỆ THÔNG TIN

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG WEBSITE
HỌC TIẾNG ANH

ĐỒ ÁN TỐT
ĐẠI HỌCĐẠI
HỆ HỌC
CHÍNH QUY
ĐỒ NGHIỆP
ÁN TỐT NGHIỆP
Ngành: xxx
(Chú ý: Ghi đúng tên ngành đào tạo)

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG WEBSITE
HỌC TIẾNG ANH

Giảng viên hướng dẫn: ThS. Xxx xxx
HÀ NỘI - 2022




ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN

<Họ và tên sinh viên>

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG WEBSITE
HỌC TIẾNG ANH

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: xxx
(Chú ý: Ghi đúng tên ngành được đào tạo)

Cán bộ hướng dẫn:
(ký tên)

Cán bộ đồng hướng dẫn:
(ký tên)

HÀ NỘI - 2022


MỤC LỤC
Phần 1: Phần mở đầu..................................................................................................1
1.1.

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

1.2.


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

1.3.

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

1.4.

Kết quả dự kiến đạt được................................................................................1

Phần 2: Phần nội dung................................................................................................2
Chương 1: Cơ sở lý thuyết.......................................................................................2
1.1.

Phân tích và thiết kế hướng đối tượng:........................................................2

1.1.1. Định nghĩa:..................................................................................................2
1.1.2. Phần mềm hỗ trợ thiết kế Draw.io trực tuyến:.........................................2
1.2.

UML trong phân tích thiết kế hướng đối tượng:..........................................2

1.2.1. Định nghĩa UML:........................................................................................2
1.2.2. Phân tích thiết kế hướng đối tượng sử dụng UML:..................................2
1.3.

Ngôn ngữ thiết kế web HTML và CSS:........................................................3

1.3.1. HTML:.........................................................................................................3
1.3.2. CSS:.............................................................................................................. 3

1.4.

Ngôn ngữ kịch bản JavaScript:.....................................................................3

1.4.1. Khái niệm:...................................................................................................3
1.4.2. Kết hợp của HTML, CSS và JavaScript:..................................................4
1.4.3. Thư viện JQuery:........................................................................................5
1.5.

Các ngơn ngữ lập trình PHP:........................................................................5

1.5.1. Các khái niệm:.............................................................................................5
1.5.2. Framework Laravel:...................................................................................5
1.5.3. Mơ hình MVC:............................................................................................5
1.6.

Hệ quản trị cơ sở dữ liệu MySQL:................................................................7

1.6.1. Các khái niệm:.............................................................................................7
1.6.3. MySQL:.......................................................................................................7
Chương 2: Phân tích thiết kế hệ thống...................................................................8
2.1.

Khảo sát hệ thống:..........................................................................................8

2.1.1.

Mô tả hệ thống:........................................................................................8

2.1.2.


Yêu cầu với hệ thống triển khai:.............................................................8


2.2.

Biểu đồ Use Case của hệ thống:.....................................................................9

2.2.1.

Các tác nhân của hệ thống:.....................................................................9

2.2.2.

Use Case tổng quát:.................................................................................9

2.2.3.

Use Case hệ thống:.................................................................................10

2.2.4.

Use Case của tác nhân USER(người dùng):.........................................11

2.2.5.

Use Case quản lý loại chứng chỉ:..........................................................15

2.2.6.


Use Case quản lý cấp học:.....................................................................16

2.2.7.

Use Case quản lý bộ câu hỏi:.................................................................17

2.2.8.

Use Case quản lý người dùng:..............................................................18

2.2.9.

Use Case quản lý giáo viên:...................................................................19

2.2.10. Use Case quản lý bình luận:..................................................................20
2.2.11. Use Case quản lý silde:..........................................................................21
2.2.12. Use Case quản lý tìm kiếm:...................................................................22
2.2.13. Use Case báo cáo thống kê:...................................................................23
2.3.

Biểu đồ hoạt động của hệ thống:.................................................................24

2.4.

Biểu đồ tuần tự của hệ thống:......................................................................30

2.5.

Thiết kế cơ sở dữ liệu:..................................................................................37


Chương 3: Thiết kế hệ thống.................................................................................37
Kết luận................................................................................................................... 37
Tài liệu tham khảo..................................................................................................38

DANH MỤC HÌNH


Hình 2.1. Các tác nhân của hệ thống
Hình 2.2. Use Case tổng quát
Hình 2.3. Use Case hệ thống
Hình 2.4. Use Case của tác nhân USER(người dùng)
Hình 2.6. Use Case quản lý loại chứng chỉ
Hình 2.11. Use Case quản lý cấp học
Hình 2.7. Use Case quản lý bộ câu hỏi
Hình 2.5. Use Case quản lý người dùng
Hình 2.12. Use Case quản lý giảng viên
Hình 2.9. Use Case quản lý bình luận
Hình 2.10. Use Case quản lý slide
Hình 2.13. Use Case quản lý tìm kiếm
Hình 2.14. Use Case báo cáo thống kê
Hình 2.12. Biểu đồ hoạt động tìm kiếm bộ câu hỏi
Hình 2.13. Biểu độ hoạt động đăng ký
Hình 2.14. Biểu đồ hoạt động đăng nhập
Hình 2.15. Biểu đồ hoạt động thêm bộ câu hỏi
Hình 2.16. Biểu đồ hoạt động cập nhật thơng tin cá nhân
Hình 2.17. Biểu đồ hoạt động bình luận
Hình 2.18. Biểu đồ tuần tự đăng ký
Hình 2.19. Biểu đồ tuần tự đăng nhập
Hình 2.20. Biểu đồ tuần tự xem bộ câu hỏi
Hình 2.21. Biểu đồ tuần tự thêm bộ câu hỏi

Hình 2.22. Biểu đồ tuần tự cập nhật bộ câu hỏi
Hình 2.23. Biểu đồ tuần tự xóa bộ câu hỏi
Hình 2.24. Biểu đồ tuần tự tìm kiếm bộ câu hỏi
Hình 2.25. Biểu đồ tuần tự bình luận


Phần 1: Phần mở đầu
1.1.

Lý do chọn đề tài

Tiếng anh là ngôn ngữ phổ biến nhất hiện nay và được dùng trong mọi lĩnh
vực của cuộc sống. Việc học và luyện từ vựng tiếng anh là rất cần thiết. Việc
thành thạo ngơn ngữ này có thể giúp chúng ta tìm kiếm các nguồn tài liệu phục
vụ việc học tập tốt hơn, hơn thế nữa người giỏi tiếng anh có rất nhiều cơ hội tìm
kiếm cơng việc. Việc tự học tiếng anh ln là các đề tài nóng của giới trẻ, có rất
nhiều cách tự học tiếng anh khác nhau. Trong thời điểm dịch bệnh như hiện nay,
người dùng ngày càng có xu hướng tìm hiểu và học tập qua mạng Internet. Tuy
nhiên, nhiều phần mềm học tiếng anh trên thiết bị di động chưa có nhiều, hoặc
chưa thật sự đáp ứng được nhu cầu học của người dùng. Nên việc xây dựng
website học tiếng anh với các cấp độ, các chủ đề đa dạng là rất cần thiết.
Với mục đích giúp người dùng tiếp cận nhiều hơn nữa với các bài học tiếng
anh đa dạng chủ đề và giao lưu với những người học khác, em quyết định chọn
đề tài “Phân tích thiết kế và xây dựng website học tiếng anh”. Việc xây dựng
website này sẽ đáp ứng nhu cầu học tập tiếng anh của mọi người.
1.2.

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

-


Trình bày được các vấn đề liên quan đến ngơn ngữ PHP, cơ sở dữ liệu Mysql,
mơ hình MVC...

-

Khảo sát thực trạng các chương trình học tiếng anh và nhu cầu học tập của
người dùng hiện nay

-

Phân tích hệ thống chương trình bao gồm các giao diện, các activity nhằm đáp
ứng nhu cầu người dùng

-

Triển khai và cài đặt chương trình

1.3.

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

-

Xây dựng chương trình dựa vào ngơn ngữ lập trình PHP với Framework
Laravel và cơ sở dữ liệu Mysql

-

Chương trình tập chung chức năng nghiệp vụ từ khảo sát thực trạng


1.4.

Kết quả dự kiến đạt được

-

Tìm hiểu nhu cầu, nghiệp vụ tìm kiếm những chương trình học tiếng anh của
người dùng

-

Hiểu về ngơn ngữ lập trình PHP và áp dụng cho xây dựng website

-

Hồn thành website học tiếng anh với các tính năng như:
o Admin: thực hiện các chức năng như quản trị hệ thống, quản lý các
chứng chỉ, quản lý bộ câu hỏi, quản lý slide, quản lý người dùng, quản lý
bình luận, quản lý giáo viên, quản lý cấp học, xem thống kê.

1


o Người dùng: có thể thực hiện các chức năng như cập nhật thơng tin cá
nhân, bình luận, đăng ký, đăng nhập tài khoản trên hệ thống, học thử
theo các cấp độ, đăng ký khóa học, test bài và thi thử.

Phần 2: Phần nội dung
Chương 1: Cơ sở lý thuyết

1.1.

Phân tích và thiết kế hướng đối tượng:
1.1.1. Định nghĩa:
- Phân tích thiết kế hướng đối tượng(OOAD) là giai đọan phát triển một mơ
hình chính xác và súc tích của vấn đề, có thành phần là các đối tượng và khái
niệm đời thực, dễ hiểu đối với người sử dụng.
- Năm nguyên tắc trong thiết kế hướng đối tượng:
 Một lớp chỉ nên có một lý do để thay đổi, tức một lớp chỉ nên xử lý một chức
năng đơn lẻ, duy nhất. Nếu đặt nhiều chức năng vào một lớp sẽ dẫn đến sự phụ
thuộc giữa các chức năng với nhau và mặc dù sau đó thay đổi một chức năng
cũng phá vỡ các chức năng còn lại.
 Các lớp, module, chức năng nên dễ dàng Mở(Open) cho việc thêm chức năng
mới, và Đóng(Close) cho việc thay đổi.
 Lớp dẫn xuất phải có khả năng thay thế được lớp cha.
 Chương trình khơng nên buộc phải cài đặt một Interface mà nó khơng sử dụng
đến.
 Các module cấp cao khơng nên phụ thuộc vào các module cấp thấp. Cả hai
nên phụ thuộc thông qua lớp trừu tượng. Lớp trừu tượng không nên phụ thuộc
vào chi tiết. Chi tiết nên phụ thuộc vào trừu tượng.
1.1.2. Phần mềm hỗ trợ thiết kế Draw.io trực tuyến:
- Draw.io là một ứng dụng vẽ biểu đồ miễn phí cho phép người dùng tạo và
chia sẻ các sơ đồ trên trình duyệt web. Cơng cụ trực tuyến này hoạt động với G
Suite / Google Drive và Dropbox. Cũng có thể làm việc trên sơ đồ ngoại tuyến và
lưu trữ cục bộ.
- Draw.io cung cấp giao diện trực quan với tính năng kéo và thả, các mẫu sơ
đồ có thể tùy chỉnh và thư viện hình khối mở rộng. Người dùng có thể tạo và
chỉnh sửa một loạt các sơ đồ, biểu đồ bao gồm biểu đồ luồng, biểu đồ quy trình,
sơ đồ tổ chức, sơ đồ ER, UML, sơ đồ mạng, ...


2


- Hệ thống chức năng phong phú của draw.io cho phép người dùng theo dõi
và khôi phục các thay đổi, nhập và xuất các định dạng khác nhau, đồng thời tự
động xuất bản và chia sẻ công việc.
1.2. UML trong phân tích thiết kế hướng đối tượng:
1.2.1. Định nghĩa UML:
- UML là ngơn ngữ mơ hình hố hợp nhất dùng để đặc tả, trực quan hóa và
tư liệu hóa phần mềm hướng đối tượng, có phần chính bao gồm những ký hiệu
hình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả
các thiết kế của một hệ thống.
1.2.2. Phân tích thiết kế hướng đối tượng sử dụng UML:
- Phân tích thiết kế hướng đối tượng cần các bản vẽ để mô tả hệ thống được
thiết kế, cịn UML là ngơn ngữ mơ tả các bản vẽ nên cần nội dung thể hiện. Do
vậy, chúng ta phân tích và thiết kế theo hướng đối tượng và sử dụng UML để
hiểu diễn các thiết kế đó nên chúng thường đi đôi với nhau. OOAD sử dụng
UML với các phương thức như sau:
 View(góc nhìn): Mỗi góc nhìn thể hiện một khía cạnh. Trong phần mềm
OOAD sử dụng UML có các góc nhìn: Về ca sử dụng, về cấu trúc, về triển
khai hệ thống, về các thành phần trong hệ thống
 Diagram(bản vẽ): Các bản vẽ dùng để thể hiện các góc nhìn của hệ thống. Bản
vẽ mô tả về các ca sử dụng, mô tả cấu trúc hệ thống, mô tả sự tương tác của
các đối tượng trong hệ thống...
 Notations(các ký hiệu): Các kí hiệu để vẽ, nó là từ vựng trong ngơn ngữ tự
nhiên.
 Mechanisms(các quy tắc): Mỗi bản vẽ có quy tắc riêng và cần nắm được quy
tắc đó để tạo nên bản thiết kế đúng và nhất quán.
1.3.


Ngôn ngữ thiết kế web HTML và CSS:
1.3.1. HTML:
- HTML(Hypertext Markup Language) là mã được dùng để xây dựng nên
cấu trúc và nội dung của trang web. Ví dụ, nội dung có thể được cấu thành bởi
một loạt các đoạn văn, một danh sách liệt kê, hoặc sử dụng những hình ảnh và
bảng biểu... Hiện nay, phiên bản mới nhất của HTML là HTML5.
1.3.2. CSS:
- CSS(viết tắt của Cascading Style Sheets) dùng để miêu tả cách trình bày
các tài liệu viết bằng ngơn ngữ HTML và XHTML. CSS được hiểu đơn giản đó
là cách mà chúng ta thêm các kiểu hiển thị (font chữ, màu sắc, kích thước...) cho
một tài liệu web.
- Tác dụng chính của CSS:
 Hạn chế tối thiểu việc làm rối HTML của trang Web bằng các thẻ quy định
kiểu dáng(chữ đậm, in nghiêng,...), giúp mã nguồn của trang Web trở nên gọn
gàng hơn.
3


 Tách biệt nội dung trang Web và định dạng hiển thị, dễ dàng cho việc thay đổi.
 Tạo ra các kiểu dáng áp dụng được cho nhiều trang Web, tránh lặp lại việc
định dạng cho các trang Web giống nhau.
1.4.

Ngôn ngữ kịch bản JavaScript:

1.4.1. Khái niệm:
- Javascript là một ngơn ngữ lập trình của HTML và ứng dụng Web. Nó nhẹ
và được sử dụng phổ biến nhất, như một phần của các trang web. Chúng cho
phép client-server script tương tác với người sử dụng và tạo các trang web động.
Nó là một ngơn ngữ chương trình thơng dịch với các khả năng hướng đối tượng.

- Một số ưu điểm của JavaScript:
 Tiêt kiệm băng thông máy chủ:
Javascript sử dụng trong thiết kế website có thể giúp tiết kiệm băng thông máy
máy chủ vô cùng tốt bởi chúng được chạy trực tiếp trên máy của người dùng.
Các dòng Script đều được thực thi trên trình duyệt người dùng để gia tăng hiệu
suất, kéo dài tuổi thọ máy chủ và tiết kiệm diện tích băng thơng.
 Linh hoạt vận hành, tương thích tốt:
Để thực thi, trình duyệt web chỉ cần tải file JavaScript về máy chủ từ một tên
miền riêng biệt hoặc nhúng thẳng vào file HTML và chạy mà không cần tải
thêm. Javascript có thể chạy được trên hầu hết các trình duyệt phổ biến hiện
nay như Cốc Cốc, Chrome, Firefox, Safari...
Khơng những thế, hầu hết các trình duyệt web đều có tích hợp sẵn trình thơng
dịch ngơn ngữ JavaScript, đảm bảo người dùng có thể sử dụng ngay mà khơng
mất cơng tải về trình duyệt, giảm tỷ lệ thực thi các chức năng của JavaScript.
Điều này vô cùng tiện lợi cho người dùng khi khơng có mạng.
 Dễ dàng kiểm tra, xử lý vấn đề:
Với lợi thế có nhiều trình duyệt hỗ trợ nên việc kiểm tra và xử lý vấn đề dễ
dàng hơn. Đa số các trình duyệt web hiện nay đều có cài sẵn các cơng cụ xử lý
lỗi Javascript trong bảng điều khiển trình duyệt.
Javascript sở hữu cấu trúc dễ đọc với cácnguyên tắc rõ ràng nên việc xác định
và gỡ lỗi trở nên đơn giản hơn nhiều.
 Nâng cao trải nghiệm người dùng:
Website sử dụng ngơn ngữ lập trình giúp thu hút người dùng bởi những tính
năng hay ho, hình ảnh sinh động hấp dẫn, chức năng lướt và tương tác nhanh
nhạy. Nhờ những tính năng đó, người dùng cảm thấy thoải mái, thích thú và
tin dùng trang web hơn.
1.4.2. Kết hợp của HTML, CSS và JavaScript:
- Một website thường có 3 phần cơ bản gồm HTML, CSS và Javascript.
Trong đó, HTML quyết định nội dung và cấu trúc trang web; CSS quyết định
màu sắc, hình dáng, kiểu chữ,… Hầu hết các thay đổi của HTML và CSS đều

được thể hiện dưới dạng tĩnh, không thể thực hiện các hành động với chuyển
4


động bắt mắt như xoay hình, kiểm tra thơng tin hợp lệ, hiển thị thông báo người
dùng...
- Tất cả các hành động này được chuyển thể từ trạng thái tĩnh sang trạng
thái động nhờ vào thành phần thứ 3 là Javascript. Ba thành phần này kết hợp với
nhau tạo nên website hoàn chỉnh với giao diện (UI) và trải nghiệm người dùng
(UX) chất lượng.

Hình 1.1. Minh họa HTML – CSS – JavaScript
1.4.3. Thư viện JQuery:
- JQuery là một thuật ngữ được dùng rất nhiều trong thời đại công nghệ
hiện nay. Kể từ khi phát triển 2.0, cụm từ này đã được dùng khá phổ biến. Vậy
JQuery là gì? JQuery là một thư viện được xây dựng trên Javascript. Chúng được
tạo ra với mục đích hỗ trợ các lập trình viên giải quyết các khó khăn khi sử dụng
Javascript. JQuery được tích hợp từ nhiều module chuyên biệt, bao gồm cả
module hiệu ứng, đến module truy cấp selector.
- Có thể hiểu JQuery là thư viện Javascript đa tính năng, nhanh chóng và
tiện lợi. Thư viện này được tạo bởi John Resig với phương châm ưu việt: “Write
less, do more” - Viết ít hơn, năng suất hơn. JQuery đơn giản hóa các thao tác
duyệt tài liệu HTML, tăng cường tương tác Ajax để có thể nâng cao tối đa hiệu
quả phát triển Website. Hiện nay, công cụ hỗ trợ này được sử dụng vơ cùng rộng
rãi.
- Một số tính năng quan trọng được hỗ trợ bởi JQuery:
 Thao tác DOM: JQuery giúp dễ dàng lựa chọn các phần tử DOM để duyêt một
cách dễ dàng như sử dụng CSS, và chỉnh sửa nội dung của chúng sử dụng
Selector mã nguồn mở.


5


 Hỗ trợ AJAX: JQuery giúp phát triển một site giàu tính năng và phản hồi tốt
bởi cơng nghệ AJAX.
 Xử lý sự kiện: JQuery giúp tương tác người dùng tốt hơn bằng việc xử lý các
sự kiện đa dạng mà không làm cho HTMl code rối tung lên.
 Hiệu ứng động: JQuery đi kèm rất nhiều hiệu ứng đẹp có thể sử dụng cho các
website.
 Gọn nhẹ: JQuery là thư viện gọn nhẹ, nó chỉ có kích cỡ khoảng 19KB.
 Hỗ trợ hầu hết các trình duyệt hiện đại: JQuery hỗ trợ hầu hết các trình duyệt
hiện đại, làm việc tốt trên IE 6.0+, Safari 3.0+, Opera 9.0+, FF 2.0+ và
Chrome.
 Cập nhật và hỗ trợ các công nghệ mới nhất: JQuery hỗ trợ CSS3 Selector và
cú pháp XPath cơ bản.
1.5.

Các ngơn ngữ lập trình PHP:
1.5.1. Các khái niệm:
- PHP là ngôn ngữ script được tạo cho các giao tiếp phía server. Do đó, nó
có thể xử lý các giao tiếp phái server như thu thập dữ liệu, biểu mẫu, quản lý file
trên server, sửa đổi cơ sở dữ liệu và nhiều hơn.
1.5.2. Framework Laravel:
- Framework chính là một thư viện với các tài nguyên có sẵn cho từng lĩnh
vực để lập trình viên sử dụng thay vì phải tự thiết kế. Với Framework, lập trình
viên chỉ cần tìm hiểu và khai thác những tài nguyên đó, gắn kết chúng lại với
nhau và hồn chỉnh sản phẩm của mình.
1.5.3. Mơ hình MVC:
- MVC (Model-View-Controller) là mẫu kiến trúc phần mềm trên máy tính
nhằm mục đích tạo lập giao diện cho người dùng. Hệ thống MVC được chia

thành ba phần có khả năng tương tác với nhau và tách biệt các nguyên tắc nghiệp
vụ với giao diện người dùng. Ba thành phần ấy bao gồm:
 Controller: Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi
đúng những phương thức xử lý chúng.
 Model: Là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy
xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…
 View: Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa
tất cả các đối tượng GUI như textbox, images…

6


Hình 1.2. Mơ hình MVC của Laravel
- Mơ hình MVC phù hợp với các dự án với các đội ngũ làm việc độc lập với
nhau, như vậy các công việc đều có thể được thực hiện một cách linh hoạt.
- Như vậy, mơ hình này nổi bật nhờ những ưu điểm:
 Hỗ trợ q trình phát triển nhanh chóng:
Các phần hoạt động độc lập, nên các lập trình viên có thể làm việc đồng thời
trên từng bộ phận khác nhau của mơ hình này. MVC giúp tiết kiệm rất nhiều
thời gian.
 Khả năng cung cấp đồng thời nhiều View:
Với mô hình MVC, có thể tạo ra đồng thời nhiều khung View cho Model.
 Hỗ trợ các kỹ thuật không đồng bộ:
MVC có thể hoạt động trên nền tảng JavaScript. Có nghĩa là các ứng dụng
MVC có thể hoạt động với các file PDF, các trình duyệt web cụ thể và cả
widget máy tính.
 Dễ dàng thao tác chỉnh sửa:
Model hoạt động tách biệt với View, đồng nghiac với việc có thể đưa ra các
thay thế, chỉnh sửa hoặc cập nhật dễ dàng ở từng bộ phận.
 Giữ nguyên trạng thái data:

Mơ hình MVC truyền lại dữ liệu nhưng khơng định dạng lại dữ liệu. Do đó,
các dữ liệu này cố thể được dùng lại cho các thay đổi sau.
 Hỗ trợ nền tảng phát triển SEO:

7


1.6.

Với mơ hình MVC, có thể dễ dàng tạo ra các mã SEO URL để thu hút lượng
truy cập đối với ứng dụng bất kỳ.
Hệ quản trị cơ sở dữ liệu MySQL:
1.6.1. Các khái niệm:
- Cơ sở dữ liệu (Database) là một tập hợp các dữ liệu có tổ chức, thường
được lưu trữ và truy cập điện tử từ hệ thống máy tính. Khi cơ sở dữ liệu phức tạp
hơn, chúng thường được phát triển bằng cách sử dụng các kỹ thuật thiết kế và mơ
hình hóa chính thức.
- Hệ quản trị cơ sở dữ liệu (viết tắt của Database Management System) là
hệ thống được thiết kế để quản lý một khối lượng dữ liệu nhất định một cách tự
động và có trật tự. Các hành động quản lý bao gồm chỉnh sửa, xóa, lưu và tìm
kiếm thơng tin trong một nhóm dữ liệu nhất định.
- Nói ngắn gọn, Hệ quản trị cơ sở dữ liệu đề cập đến công nghệ lưu trữ và
truy xuất dữ liệu của người dùng với hiệu quả tối đa cùng với các biện pháp bảo
mật thích hợp.
1.6.3. MySQL:
- MySQL là hệ quản trị cơ sở dữ liệu sử dụng mã nguồn mở phổ biến nhất
thế giới và được các chuyên gia lập trình rất ưa chuộng trong quá trình phát triển
web, phát triển ứng dụng của mình. Với tốc độ và tính bảo mật cao, MySQL rất
thích hợp cho các ứng dụng có truy cập CSDL trên Internet.
- Một số lý do chính khiến MySQL trở nên quan trọng:

 Linh hoạt và dễ dùng:
Có thể sửa sourch code để đánh ứng nhu cầu sử dụng mà khơng phải thanh
tốn thêm chí phí nào, q trình cài đặt cũng đơn giản.
 An tồn:
An tồn dữ liệu luôn là vấn đề quan trọng nhất khi chọn phần mềm RDBMS.
Với hệ thống phân quyền truy cập và quản lý tài khoản, MySQL đặt tiêu chuẩn
bảo mật rất cao.
 Tốc độ rất nhanh:
Đánh giá chung của các nhà phát triển đều cho rằng MySQL là cơ sở dữ liệu
nhanh nhất. Đây là nơi để các website có thể trao đổi thường xuyên các dữ liệu
bởi nó có engine xử lý tốc độ cao.
Khả năng chèn dữ liệu cực nhanh và hỗ trợ mạnh mẽ các chức năng chuyên
dụng cho trang web.
 Hiệu năng cao:
Bất kể lưu trữ dữ liệu lớn của các trang thương mại điện tử hoặc những hoạt
động kinh doanh lớn liên quan đến công nghệ thơng tin, MySQL cũng có thể
đáp ứng với tốc độ cao và mượt mà.

8


Chương 2: Phân tích thiết kế hệ thống
2.1.

Khảo sát hệ thống:
2.1.1.

Mô tả hệ thống:

Giáo dục ngày càng phát triển để đáp ứng với sự thay đổi của cơng nghệ

mới. Ngồi hình thức học tập theo phương thức truyền thống, thì hình thức học
và làm bài tập trực tuyến qua Internet ngày càng phổ biến. Nhất là trong tình hình
dịch bệnh Covid-19 phức tạp như hiện nay. Website học tiếng anh trực tuyến ra
đời, nó đáp ứng hầu hết nhu cầu học tập và nâng cao vốn từ tiếng anh cho mọi
người.
Website cung cấp thông tin các topic(chủ đề) bao gồm một số các topic như
chào hỏi, mua sắm, hỏi đường… với các mẫu câu thường dùng trong giao tiếp
thường ngày. Người dùng có thể lựa chọn các topic để học tập. Mỗi topic sẽ có
nhiều cấp độ học với các bộ câu hỏi khác nhau, kết thúc từng giai đoạn của topic,
các cấp độ học sẽ nâng cao dần. Mỗi topic sẽ có tiêu đề, các cấp độ và tổng số
câu hỏi. Mỗi câu hỏi sẽ lưu các thông tin như nội dung câu hỏi, câu trả lời đúng,
topic của câu hỏi.
Để có thể học trên website người dùng cần đăng nhập, nếu chưa có tài
khoản có thể thực hiện đăng ký. Đăng nhập website thành cơng, người dùng có
thể thực hiện đăng ký các topic bài học muốn học. Sau khi học xong người dùng
có thể xem các thơng tin về tiến độ học, cũng như thông tin cá nhân của mình
trên trang chủ. Sau khi học các topic, người dùng có thể làm các bài test theo
từng topic và thi thử. Hệ thống sẽ thực hiện chấm điểm và trả về kết quả cho
người dùng và lưu thông tin các bài test, thi thử của người dùng.
Để nâng cao chất lượng, website đã chọn lọc nhưng topic hay, gần gũi với
tất cả mọi người, tích hợp nhiều hình thức học khác nhau như nghe, nói, viết…
giúp bổ sung đầy đủ nhưng kĩ năng người dùng cịn thiếu sót. Website phù hợp
với mọi người, đặc biệt với những người bận rộn và phù hợp trong tình hình dịch
bệnh hiện nay.
2.1.2. Yêu cầu với hệ thống triển khai:
Một số yêu cầu rút ra:
 Về thông tin:
- Các thông tin phải được lưu trữ lâu dài, đầy đủ và chính xác.
- Các thơng tin được nhập vào phải chính xác, đúng định dạng và đầy đủ.


 Về quy trình nghiệp vụ:
9


- Kiểm tra các lỗi cập nhật thông tin và có phản hồi tới người dùng.
- Phân quyền trang người dùng và trang quản lý.
- Người dùng có thể xem nội dung và học các loại chứng chỉ, xem tiến trình
học của mình và bình luận giao lưu với mọi người.
- Quản lý có thể theo dõi thơng tin người dùng, danh sách các loại chứng chỉ,
bộ câu hỏi, bình luận và xem các báo cáo thống kê.

 Về website:
- Giao diện thân thiện, dễ sử dụng, cập nhật thường xuyên các thông tin loại
chứng chỉ và bộ câu hỏi.
- Tương thích đa thiết bị.

2.2.

Biểu đồ Use Case của hệ thống:
2.2.1.

Các tác nhân của hệ thống:

Hình 2.1. Các tác nhân của hệ thống
2.2.2.

Use Case tổng quát:

10



Hình 2.2. Use Case tổng quát

2.2.3.

Use Case hệ thống:

11


Hình 2.3. Use Case hệ thống

 Đăng ký:


Tác nhân: Người dùng.



Mơ tả tổng qt: Người dùng truy cập website có thể đăng ký tài khoản để
lưu các tiến trình học tập và bình luận tại các topic của website.



Điều kiện đầu vào: Khi người dùng truy cập và chọn đăng ký.
 Dịng sự kiện chính:
 Người dùng chọn đăng ký.
 Hệ thống hiển thị trang đăng ký.
 Người dùng nhập các trường thông tin và chọn đăng ký.
 Hệ thống kiểm tra các trường dữ liệu:

▫ Nếu thỏa mãn thì chuyển đến trang chủ.
▫ Nếu khơng thỏa mãn thì thực hiện dòng sự kiện rẽ nhánh A1.
 Dòng sự kiện rẽ nhánh A1:
 Hệ thống thông báo việc nhập dữ liệu không hợp lệ.
 Nhập lại thông tin.
 Quay lại bước 3 của sự kiện chính.



Điều kiện đầu ra: Lưu tài khoản người dùng đã đăng ký.

 Đăng nhập:

12




Tác nhân: Người dùng và quản trị viên.



Mô tả tổng quát: Người dùng và quản trị viên đăng nhập vào hệ thống.



Điều kiện đầu vào: UseCase sử dụng khi người dùng muốn đăng nhập vào
hệ thống.
 Dịng sự kiện chính:
 Hệ thống yêu cầu nhập tài khoản và mật khẩu.

 Người dùng nhập tài khoản và mật khẩu.
 Hệ thống kiểm tra tên và mật khẩu vừa nhập:
▫ Nếu đúng sẽ kiểm tra quyền, và hiển thị quyền tương ứng của tài
khoản.
▫ Nếu sai thực hiện luồng sự kiện phụ A1.
 Dịng sự kiện phụ A1:
 Hệ thống sẽ thơng báo việc nhập dữ liệu không hợp lệ.
 Người dùng nhập lại tài khoản và mật khẩu.
 Quay lại bước 3 của luồng sự kiện chính, hoặc hủy bỏ việc đăng nhập,
khi đó ca sử dụng kết thúc.

 Đăng xuất:


Tác nhân: Người dùng và quản trị viên.



Mô tả tổng quát: Người dùng và quản trị viên muốn thoát tài khoản khỏi hệ
thống.



Điều kiện đầu vào: UseCase sử dụng khi người quản trị và người dùng chọn
đăng xuất.
 Dòng sự kiện chính:
 Hệ thống hủy việc lưu thơng tin đăng nhập.
 Quay về màn hình trang chủ.

2.2.4.


Use Case của tác nhân USER(người dùng):

13


Hình 2.4. Use Case của tác nhân USER(người dùng)

 Xem danh sách cấp độ học:



Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng muốn xem danh sách cấp độ học.



Điều kiện đầu vào: UseCase sử dụng khi người dùng truy cập trang chủ
website.
 Dịng sự kiện chính:
 Hệ thống lấy thông tin các topic và chi tiết các bộ câu hỏi.
 Hiển thị giao diện trang chủ với các topic.

 Học thử:

14





Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng truy cập trang chủ, chọn học thử các loại
chứng chỉ.



Điều kiện đầu vào: UseCase sử dụng khi bắt đầu đăng nhập thành cơng hệ
thống.
 Dịng sự kiện chính:
 Ca sử dụng bắt đầu khi người dùng đăng nhập vào hệ thống.
 Hệ thống hiển thị học thử theo các cấp độ.
 Người dùng chọn một trong các cấp độ muốn học và chọn học thử:
▫ Chọn học theo từ vựng: Hiển thị giao diện ôn lại từ vựng, kiểm tra
theo phương pháp nghe, nói và viết. Sau khi hồn thành việc ôn tập,
thực hiện kiểm tra kết quả.
▫ Chọn học theo topic: Hệ thống lấy dữ liệu tiến trình học của người
dùng, hiển thị bộ câu hỏi cho tiến trình học tiếp theo. Sau khi người
dùng hồn thành tiến trình, đánh giá đạt/không đạt. Nếu đạt thực hiện
mở các topic mới.



Điều kiện đầu ra: Lưu các tiến trình học của người dùng trong hệ thống.


 Test bài:


Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng thực hiện test sau mỗi bài học.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành công và chọn
bài học và chọn test bài.
 Dịng sự kiện chính:
 Người dùng chọn bài test.
 Hệ thống hiển thị form test bài học.
 Người dùng thực hiện chọn các đáp án và chọn gửi.
 Hệ thống kiểm tra trường dữ liệu:
▫ Nếu chọn đáp án đầy đủ thực hiện bước tiếp theo.
▫ Nếu khơng thì thơng báo lỗi.
 Hệ thống thông báo cập nhật bài test thành công.
 Hệ thống cập nhật bài test vào cơ sở dữ liệu.

15


 Hệ thống thông báo điểm bài test.


Điều kiện đầu ra: Thông tin bài test của người dùng được cập nhật vào cơ

sở dữ liệu.

 Thi thử:


Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng thực hiện thi thử.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành cơng và chọn
thi thử.
 Dịng sự kiện chính:
 Người dùng chọn thi thử.
 Hệ thống hiển thị form thi thử.
 Người dùng thực hiện chọn và nhập các đáp án và chọn gửi.
 Hệ thống kiểm tra trường dữ liệu:
▫ Nếu chọn và điền các đáp án đầy đủ thực hiện bước tiếp theo.
▫ Nếu khơng thì thơng báo lỗi.
 Hệ thống thông báo cập nhật bài thi thử thành công.
 Hệ thống cập nhật bài thi thử vào cơ sở dữ liệu.
 Hệ thống thông báo kết quả bài test.



Điều kiện đầu ra: Thông tin và kết quả bài thi thử của người dùng được cập
nhật vào cơ sở dữ liệu.


 Cập nhật thông tin cá nhân:



Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng cập nhật thông tin cá nhân của mình.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành công và chọn
thông tin cá nhân.
 Dịng sự kiện chính:
 Người dùng chọn cập nhật thông tin cá nhân.
 Hệ thống hiển thị form cập nhật thông tin.
 Người dùng nhập các thông tin muốn sửa đổi, và chọn cập nhật.
 Hệ thống kiểm tra các trường dữ liệu:
16


▫ Nếu đầy đủ và đúng định dạng thì chuyển qua bước tiếp theo.
▫ Nếu khơng thì thực hiện dịng sự kiện rẽ nhánh A1.
 Hệ thống thông báo cập nhật thông tin cá nhân thành công.
 Hệ thống cập nhật thông tin cá nhân vào cơ sở dữ liệu.
 Dịng sự kiện rẽ nhánh A1:
 Hệ thống thơng báo việc nhập dữ liệu không hợp lệ.
 Nhập lại thông tin.

 Quay lại bước 3 của sự kiện chính.


Điều kiện đầu ra: Thông tin của người dùng được cập nhật vào cơ sở dữ
liệu.

 Bình luận:



Tác nhân: Người dùng.



Mơ tả tổng quát: Người dùng bình luận tại các chứng chỉ.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành cơng và chọn
bình luận.
 Dịng sự kiện chính:
 Người dùng chọn loại chứng chỉ, chọn bình luận.
 Hệ thống hiển thị form bình luận.
 Người dùng nhập bình luận và gửi.
 Hệ thống kiểm tra các trường dữ liệu:
▫ Nếu đầy đủ và đúng định dạng thì chuyển qua bước tiếp theo.
▫ Nếu khơng thì thực hiện dịng sự kiện rẽ nhánh A1.
 Hệ thống hiển thị bình luận của người dùng trong trang chứng chỉ hiện
hành.
 Hệ thống cập nhật bình luận của người dùng vào cơ sở dữ liệu.

 Dòng sự kiện rẽ nhánh A1:
 Hệ thống thông báo việc nhập dữ liệu không hợp lệ.
 Nhập lại thông tin.
 Quay lại bước 3 của sự kiện chính.

17




Điều kiện đầu ra: Bình luận của người dùng được cập nhật vào cơ sở dữ
liệu.

 Đăng ký học:



Tác nhân: Người dùng.



Mô tả tổng quát: Người dùng thực hiện đăng ký các chứng chỉ mong muốn.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành công và chọn
thêm các chứng chỉ vào giỏ hàng.
 Dịng sự kiện chính:
Thêm chứng chỉ bài học vào giỏ hàng:
 Người dùng chọn chứng chỉ, chọn thêm vào giỏ hàng.

 Hệ thống kiểm tra ràng buộc:
▫ Nếu chứng chỉ còn được hỗ trợ thì chuyển qua bước tiếp theo.
▫ Nếu khơng thì thực hiện thơng báo chứng chỉ khơng cịn được hỗ trợ.
 Hệ thống lưu session giỏ hàng của người dùng.
Xóa chứng chỉ trong giỏ hàng:
 Người dùng chọn chứng chỉ muốn xóa, chọn xóa.
 Hệ thống kiểm tra ràng buộc:
▫ Nếu thỏa mãn, thực hiện xóa các chứng chỉ khỏi giỏ hàng.
▫ Nếu khơng thì thơng báo lỗi.
 Hệ thống lưu session giỏ hàng của người dùng.



Điều kiện đầu ra: Session giỏ hàng được lưu.

 Tìm kiếm loại chứng chỉ:



Tác nhân: Người dùng.



Mơ tả tổng qt: Người dùng thực hiện tìm kiếm các loại chứng chỉ mong
muốn.



Điều kiện đầu vào: Khi người dùng đăng nhập hệ thống thành công và nhập
từ khóa tìm kiếm.

 Dịng sự kiện chính:
 Người dùng nhập từ khóa, và chọn tìm kiếm.
 Hệ thống kiểm tra dữ liệu:
18


▫ Nếu có dữ liệu thì hiển thị danh sách.
▫ Nếu khơng thì trả về danh sách rỗng.


Điều kiện đầu ra: Danh sách các loại chứng chỉ hiển thị theo từ khóa người
dùng nhập.

2.2.5.

Use Case quản lý loại chứng chỉ:

Hình 2.6. Use Case quản lý loại chứng chỉ


Tác nhân: Quản trị viên.



Mô tả tổng quát: Người quản trị quản lý các loại chứng chỉ trong hệ thống.



Điều kiện đầu vào: Người dùng đăng nhập thành công, với quyền quản trị.
 Dịng sự kiện chính:

 Quản trị viên chọn quản lý loại chứng chỉ.
 Hệ thống hiển thị danh sách loại chứng chỉ, và các chức năng: thêm, sửa
và xóa loại chứng chỉ:
▫ Thêm loại chứng chỉ:
 Hệ thống hiển thị form nhập thông tin loại chứng chỉ.
 Người quản lý nhập thông tin loại chứng chỉ.
 Nhập nút thêm loại chứng chỉ.

19


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×