Tải bản đầy đủ (.doc) (28 trang)

XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL

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 (732.75 KB, 28 trang )

XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Mục lục:
PHẦN I: MỞ ĐẦU 4
1. Lý do chọn đề tài 4
2. Đối tượng nghiên cứu 5
3. Ý nghĩa lý luận và thực tiễn của đề tài 5
PHẦN II: NỘI DUNG 6
TỔNG QUAN VỀ CÁC VẤN ĐỀ NGHIÊN CỨU 6
Phân tích nghiệp vụ 6
Giao diện 6
Thiết đặt cấu hình 6
Phân quyền 6
Quản lý thành viên 6
Quản lý Tin tức, Bài học, Bài test, Ebook, Video… 6
Module Quản lý tài liệu 6
Module Liên kết 6
Module RSS 6
Khảo sát yêu cầu của hệ thống 7
Yêu cầu chức năng 7
Yêu cầu phi chức năng 7
Thông tin khác 7
Công nghệ phần mềm 7
Bảo mật phần mềm 7
Lợi ích khi sử dụng phần mềm 7
Hướng giải quyết vấn đề - Công nghệ sử dụng 7
PHP 7
CMS Drupal 8
UML 8
Sử dụng Javascript và AJAX/JSON 8
DRUPAL FRAMEWORK 10


Giới thiệu về Drupal 10
Trang 1
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Giới thiệu tổng quan 10
Kiến trúc của Drupal 10
Cách thức hoạt động 11
Các thành phần Drupal 12
PHÂN TÍCH YÊU CẦU 14
Đặc tả yêu cầu, chức năng hệ thống 14
Đặc tả yêu cầu 14
Đặc tả chức năng 15
Phân tích và thiết kế hệ thống 16
Thiết kế chức năng hệ thống 16
Các tác nhân 16
Mô hình hóa các chức năng 19
Biểu đồ Usecase (UC) 19
20
21
22
Biểu đồ tuần tự 23
23
Biểu đồ lớp 23
Thiết kế cơ sở dữ liệu 23
Danh sách các bảng cơ sở dữ liệu 23
Biểu đồ cơ sở dữ liệu 24
24
THIẾT KẾ CHƯƠNG TRÌNH 26
Thiết kế và đặc tả một số giao diện 26
Giao diện trang quản trị 26

26
Giao diện trang hiển thị 26
27
Trang 2
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Cài đặt website 27
Yêu cầu phần cứng 27
Yêu cầu phần mềm 27
PHẦN III: ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 28
1. Kết quả đạt được 28
2. Ưu/nhược điểm của đề tài 28
3. Hướng phát triển của đề tài 29
PHẦN IV: TÀI LIỆU THAM KHẢO 30
Lời cảm ơn
Sau quá trình thực hiện đề tài, nhóm chúng em đã hoàn thiện xong đề tài Xây dựng
website hỗ trợ việc học và kiểm tra trình độ tiếng anh chuyên ngành công nghệ thông
tin áp dụng CMS Drupal.Đầu tiên cho nhóm gửi lời cảm ơn trân trọng nhất đến:
Các thầy cô trong khoa Công Nghệ Thông Tin đã trang bị cho nhóm chúng em những
kiến thức quý báu trong suốt quá trình trên giảng đường, và tận tình chỉ bảo trong suốt
quá trình thực hiện đề tài này.
Đặc biệt nhóm chúng em xin gửi lời cảm ơn chân thành nhất đến thầy Lê Quang Lợi đã
tận tình chỉ bảo, đóng góp ý kiến, giúp đỡ và tạo mọi điều kiện tốt nhất trong suốt quá
trình làm đề tài để nhóm có thể hoàn thành tốt đề tài này.
Cảm ơn các bạn trong toàn thể lớp TK7SE đã giúp đỡ, hỗ trợ nhóm trong quá trình làm
đề tài để nhóm hoàn thành đầy đủ và tốt nhất.
Trong quá trình làm đề tài, mặc dù đã cố gắng hết sức, xong không tránh khỏi những
thiết sót, hạn chế. Nhóm rất mong nhận được sự đóng góp ý kiến của thầy cô và các
bạn để đề tài của nhóm chúng em được hoàn thiện hơn.
Nhóm chúng em xin chân thành cảm ơn!

Hưng Yên, ngày… tháng… năm ….
Nhóm đề tài
1. Phạm Thị Hạnh
Trang 3
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
2. Trần Thị Vân
PHẦN I: MỞ ĐẦU
1. Lý do chọn đề tài
Sự phát triển mạnh mẽ của Internet ngày một kéo theo sự phát triển của các ngành,
các lĩnh vực, các thành phần kinh tế
.
Một cá nhân hay tổ chức sở hữu một website,
một cổng thông tin là điều dễ thấy trên Internet và đ

thiết kế một trang web phục
vụ mục đích riêng, người dùng có nhiều lựa chọn. Một trong số đó là
sử
dụng hệ
quản trị nội dung sẵn có để tổ chức và xây dựng các trang thông
tin.
Hệ thống Drupal được thiết kế để có thể tuỳ biến theo mong muốn của người
dùng và việc
tuỳ
biến chỉ được thực hiện bằng cách thêm các module để làm tăng
khả năng của hệ thống mà không
thay
đổi bộ nhân. Do đó, đề tài này nhóm đề tài
chú trọng tìm hiểu cách xây dựng module
cho


Drupal
và các vấn đề liên
quan.
Như các lĩnh vực khác, để học CNTT hiệu quả thì tiếng Anh là công cụ hỗ trợ đắc
lực. Sau khi tốt nghiệp, với kiến thức CNTT giỏi và vốn tiếng Anh thông thạo, ứng
viên sẽ dễ dàng chinh phục nhà tuyển dụng. Tuy nhiên, trong thực tế không nhiều
người hội tụ đủ cả 2 yếu tố này. Khá nhiều sinh viên giỏi về chuyên ngành CNTT
nhưng trình độ tiếng Anh kém nên đã bỏ qua nhiều cơ hội việc làm tốt. Từ đó nhóm
đề tài mong muốn giải quyết vấn đề trên và đi đến xây dựng “ Website hỗ trợ việc
học và kiểm tra trình độ tiếng Anh chuyên nghành Công Nghệ Thông Tin áp dụng
CMS Drupal”. Qua đề tài này góp phần giúp nhóm học tập, nghiên cứu Drupal về
ứng dụng thành phần, kiến trúc,…; đồng thời giúp củng cố kiến thức, rèn luyện kỹ
Trang 4
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
năng xây dựng web cũng như là hỗ trợ việc học và tự kiểm tra trình độ tiếng anh
chuyên ngành của mọi người cũng như các thành viên trong nhóm.
2. Đối tượng nghiên cứu
- HTML5 + javascript + CSS3 + jQuery + Ajax.
- PHP & MySQL, CMS Drupal.
3. Ý nghĩa lý luận và thực tiễn của đề tài
- Tin học hóa quá trình học tiếng anh chuyên ngành khoa Công nghệ thông tin.
- Đáp ứng được nhu cầu học tập của sinh viên chuyên ngành công nghệ thông
tin.
- Đánh giá trình độ tiếng anh của sinh viên để có phương pháp học cụ thể.
- Củng cố kiến thức, phương pháp xây dựng ứng dụng đã được lĩnh hội trên
CMS Drupal.
- Áp dụng kiến thức đã nghiên cứu vào môi trường thực tiễn.
- Cơ hội tập dượt tốt trước khi tốt nghiệp.

- Tăng cường khả năng làm việc độc lập và phối hợp nhóm
Trang 5
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
PHẦN II: NỘI DUNG
TỔNG QUAN VỀ CÁC VẤN ĐỀ NGHIÊN CỨU
Phân tích nghiệp vụ
Giao diện
- Thiết kế giao diện thân thiện.
- Đảm bảo các chức năng hiện có.
- Bổ sung một số chức năng cần thiết.
Thiết đặt cấu hình
Cấu hình toàn bộ hệ thống: quản trị viên có thể dễ dàng quản lý kết nối cơ sở dữ
liệu, thêm mô tả cho website, cập nhật từ khóa và các thiết đặt cho website
Phân quyền
Phần quyền cho các vai trò: Admin,
Anonymous user, Authenticated user
. Cụ thể:
-Anonymous user: Vai trò này chỉ những người dùng không phải là một thành viên
hoặc chưa chứng thực đăng nhập.
-Authenticated user: Vai trò chỉ chung cho tất cả những người dùng đã đăng nhập hệ
thống.
Quản lý thành viên
Tạo tài khoản cho thành viên; thêm, bớt thành viên; thay đổi thông tin thành viên;
phản hồi lại nhận xét; đặt lại mật khẩu thành viên.
Quản lý Tin tức, Bài học, Bài test, Ebook, Video…
Thêm mới và cập nhật: Thông tin tức, Bài học, Bài test, Ebook, Video, Cập nhật
trình quản lý và upload thông tin đó.
Module Quản lý tài liệu
- Cho phép đưa tài liệu lên website để người dùng có thể tải về máy mình.

- Các tài liệu download được phân chia theo các danh mục khác nhau.
Module Liên kết
Cho phép
lưu danh sách các liên kết website hữu dụng…
Module RSS
Thực hiện lấy tin tức từ các website khác.
Trang 6
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Khảo sát yêu cầu của hệ thống
Yêu cầu chức năng
Hệ thống có các chức năng cho người quản trị - toàn quyền với hệ thống , chức
năng cho người quản lý nội dung website và cho khách hàng – người có nhu cầu
xem xét học và làm bài kiểm tra .
Yêu cầu phi chức năng
• Yêu cầu thực thi :
Hệ thống cho phép thao tác cùng lúc nhiều yêu cầu truy nhập từ phía người dùng –
khoảng trên 100 người cùng lúc.
• Yêu cầu bảo mật:
Hệ thống phải bảo đảm an toàn thông tin về tài khoản cho người dùng, và an toàn
CSDL, phòng trống các hoạt động trộm cắp mật khẩu của người dùng, gây ảnh
hưởng xấu đến tình trạng hoạt động của hệ thống.
• Yêu cầu chất lượng phần mềm :
Yêu cầu hệ thống phải đáp ứng đầy đủ các nhu cầu đưa ra ban đầu, thực hiện các
truy vấn chính xác, CSDL phải rõ ràng, minh bạch, dễ dàng lưu trữ, quản lý.
Thông tin khác
Công nghệ phần mềm
Ngôn ngữ lập trình PHP 5. X, cơ sở dữ liệu MySQL hỗ trợ từ localhost.
Bảo mật phần mềm
Phân quyền người dùng theo chức năng, phân quyền đến từng người sử dụng.

Lợi ích khi sử dụng phần mềm
- Giúp công tác quản lý chuyên nghiệp hơn.
- Hỗ trợ học tiếng anh chuyên ngành một cách bao quát chính xác cho những
đối tượng phù hợp.
Hướng giải quyết vấn đề - Công nghệ sử dụng
PHP
PHP là kịch bản trình chủ (server script) chạy trên phái server (server side) như
cách server scripe khác (asp, jsp…).
Trang 7
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
- PHP phát triển ứng dụng web vừa và nhỏ, cho phép phát triển các ứng dụng
web mã nguồn mở.
- Một số công cụ để phát triển ứng dụng PHP như: NetBean, Eclipse,
Dreamwear.
CMS Drupal
Drupal là một sườn phát triển phần mềm hướng module, môt hệ quản trị nội
dung miễn phí và mã nguồn mở. Drupal được xây dựng để giúp đỡ cho nhà phát
triển. Hệ thống hook đa dạng giúp người lập trình can thiệp vào mọi hoạt động mà
không phải sửa bất kì dòng lệnh nào của nhân hay các phần khác. Drupal có thể dễ
dàng tạo website cá nhân, website thảo luận, website cộng đồng, website doanh
nghiệp, website thương mại điện tử …
UML
Phân tích thiết kế hướng đối tượng sử dụng UML. UML sử dụng một hệ thống
ký hiệu thống nhất biểu diễn các Phần tử mô hình (model elements). Tập hợp các
phần tử mô hình tạo thành các Sơ đồ UML (UML diagrams).Dùng để xây dựng các
sơ đồ Lớp (Class Diagram), sơ đồ tình huống sử dụng (Use Cases Diagram), sơ đồ
tuần tự (Sequence Diagram)…
Sử dụng Javascript và AJAX/JSON
Jquery trong Drupal

Mặc định, jQuery sẽ được cài đặt cùng với Drupal, vì thế việc sử dụng là khá
dễ dàng.


nguồn
của jQuery được chứa trong file jquery.js nằm trong thư
mục misc. File này sẽ được nạp khi

lời gọi hàm
drupal_add_js().
Hàm này có
nhiệm vụ nhận mã JavaScript và thêm vào mã
nguồn
trang web. Ví
dụ:
<?php drupal_add_js(
'$(document).ready(function(){
$("p").fadeIn("slow");
});',
'inline'
);
?>
Trang 8
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Tham số đầu tiên của hàm drupal_add_js() là đoạn mã JavaScript sẽ được
thực thi.
Tham
số thứ hai (inline) cho biết Drupal sẽ ghi đoạn mã vào giữa
hai

thẻ
<script></script>
ở trong thẻ
<head>
của trang
HTML.
Tuy nhiên, để đảm bảo rằng module hoạt động đúng như mong đợi, chúng ta
cần phải đảm
bảo
các truy vấn jQuery chỉ chạy khi trình duyệt hỗ trợ JavaScript và
AJAX. Nếu trình duyệt không hỗ
trợ,
các thay đổi đối với HTML phía máy
khách sẽ không được thực hiện. Thư viện JavaScript của
Drupal
có hàm
Drupal.jsEnabled() sẽ kiểm tra điều kiện
này.
if(Drupal.jsEnabled) {
// code goes here
}
Giá trị trả về của hàm này là TRUE hoặc FALSE tương ứng với kết quả kiểm
tra.
Trang 9
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
DRUPAL FRAMEWORK
Giới thiệu về Drupal
Giới thiệu tổng quan
Drupal là một framework dùng cho phát triển phần mềm hướng module, một

hệ
thống quản trị nội dung miễn phí và mã nguồn
mở.
Hình 2.1 Các dịch vụ được sử dụng trong Drupal
Kiến trúc của Drupal
Nhìn một cách tổng quát
thì
Drupal vẫn áp dụng những nguyên lý trong lập trình
hướng đối tượng: tính đóng gói, kế thừa,
đa

hình
Kiến trúc của Drupal có thể mô tả như biểu đồ dưới
đây:
Trang 10
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Hình 2.2 Kiến trúc Drupal
Ở trung tâm của kiến trúc là phần nhân gồm một tập các file chứa các đoạn mã
nạp
chương
trình và các thư viện quan trọng. Thư viện nhân Drupal đóng vai trò
như lớp kết nối các
modules.

Phần
này cung cấp các dịch vụ như kết nối và quản
lý cơ sở dữ liệu, quản lý bộ khung hook, thư
viện
trừu tượng phục vụ mail và

hình ảnh, hỗ trợ Unicode
Cách thức hoạt động
Hình 1.3 Drupal và các lớp ở mức khái niệm của nó với các lớp của website
Ở mức khái niệm, Drupal trong giống như hình 1.1.2 Drupal là một lớp nằm giữa 2
lớp backend (những thứ giữ liên lạc với Internet) và frontend (những thứ mà người
dùng thấy được trên trình duyệt web của họ).
Ở lớp dưới cùng, mọi thứ giống như hệ điều hành của bạn vậy, Web Server,
Database và PHP được chạy trên nó như trong hình. Hệ điều hành đó điều khiển
luồng công việc để website của bạn có thể chạy được: ở mức thấp nhiệm vụ của nó
là xử lý các kết nối mạng, tập tin và phần quyền cho tập tin. Khi mà Webserver của
Trang 11
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
bạn được mở thì các máy tính có thể truy cập qua Internet và phục vụ chính xác
những yêu cầu khi ghé thăm một trang như . Database
chứa tất cả nội dụng của website, người dùng và các thiết lập cấu hình, đây là thứ
quan trọng nhất nếu bạn muốn phục hồi lại mọi thứ sau này. PHP là một ngôn ngữ
lập trình tạo ra các trang web động và đổ cở sở dữ liệu từ Database lên Webserver
Drupal bao gồm nhiều lớp ở giữa. Ở lớp thấp nhất của nó (core subsystem), nó cung
cấp chức năng bổ sung cho PHP bằng cách thêm vào một số hệ thống con
(subsystem), ví dụ như xử lý phiên người dùng, chứng thực, tính năng lọc bảo mật
(security filering) và “thể hiện template” (template rendering). Phần tiếp theo được
xây dựng dựa vào một lớp tùy biến các chức năng thêm vào gọi là modules, sẽ được
mô tả ở phần tiếp. Modules thêm các chức năng để Drupal tạo ra các nội dung của
bất kỳ trang nào. Nhưng trước khi nội dung được hiển thị cho người dùng xem thì
nó phải chạy qua theme system , cho phép sửa đổi và điều chỉnh chính xác những
thiết lập mà trước đó đã được thiết kế. Theme system tạo ra các trang nội dung
thường là XHTML hay các kiểu khác được hổ trợ. CSS được dùng để kiểm soát
việc bố trí website (layout), màu sắc của website và các phông chử thể hiện trên
website. JavaScript được dùng để xử lý các yếu tố động ví dụ như các hình đóng mở

trên form hay kéo thả các table rows trong phần giao diện của quản lý Drupal.
Các thành phần Drupal
Node
Một node, hiểu theo cách của Drupal, là một đối tượng
tổng

quát dùng để biểu
diễn nội dung dạng văn
bản.
Tuy nhiên, với khả năng tùy biến của Drupal, người phát triển có thể tạo ra các
module
mở

rộng
khả năng trình bày của node để có thể hiển thị các nội dung ngoài
văn bản thuần túy, như hình
ảnh,
video hay các file âm
thanh.
Một node gồm

các thành
phần:
- Một định danh không trùng nhau đối với 2 node bất kỳ (nid - Node ID).
- Ít nhất một giá trị thể hiện phiên bản của node (vid - Version ID).
- Ngày khởi tạo và thay đổi, cùng với thông tin xác định người dùng làm việc trực
tiếp với node đó.
Trang 12
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL

- Dữ liệu meta như trạng thái xuất bản, ngôn ngữ được sử dụng và và các bản dịch
sang ngôn ngữ khác
Người dùng (User)
Một kiểu đối tượng quan trọng khác trong Drupal là đối tượng Người dùng.
Giống
như
comment và node, dữ liệu người dùng cũng được lưu trữ trong cơ sở
dữ liệu và được lấy ra trong
quá
trình xử
lý.
Thông tin về người dùng được sử dụng
trong việc xác thực, định nghĩa các thiết lập cá nhân

quyền hạn, và tạo các bản
log.
Truy xuất và bảo
mật
Các đặc quyền của người dùng được liên kết chặt chẽ với đối tượng người dùng
mà hệ
thống

chỉ
định. Drupal có cơ chế để có thể cấp quyền cho một tập hợp
người dùng. Mặc định, mỗi
người
dùng được gán một vai trò và các đặc quyền
được cấp phát hoặc thu hồi qua vai trò
đó.
Vì thế, khi kiểm tra truy cập đến tài nguyên, Drupal nạp một đối tượng người

dùng, tìm
vài
trò của người dùng đó và kiểm tra các đặc quyền của vai trò để
quyết định cho phép truy cập
hay

không.
Những việc này được thực hiện bởi API người dùng, người phát triển module
không cần
thao
tác trực tiếp với vai trò của người dùng trước khi xác định quyền
hạn.
Thực đơn – Menu
Một khái niệm liên quan chặt chẽ đến khối là Thực đơn. Drupal có một hệ thống
thực đơn
phức
tạp được sử dụng với mục đích chính là xây dựng điều hướng cho
trang web. Ví dụ, hình trên thể
hiện
thực đơn chính với các mục Code review, My
account, Create content Thực đơn này được
khởi
tạo động bởi hệ thống
thực đơn của Drupal.
Trang 13
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
PHÂN TÍCH YÊU CẦU
Đặc tả yêu cầu, chức năng hệ thống
Đặc tả yêu cầu

Mô tả tổng thể
- Nhóm người quản trị:
+ Quản lý tài khoản người dùng , có thể xem, xoá các thông tin của người dùng
nhưng không được quyền thay đổi thông tin đó.
+ Xem, trả lời ý kiến, góp ý và phản hồi của người dùng .
+ Xem, chèn, cập nhật, xoá các bài học, video, tin tức hoặc bài kiểm tra.
+ Thống kê người truy cập.
- Nhóm người quản lý :
Quản lý bài học, bài kiểm tra, tin tức trên trang web, thêm mới , cập nhật , xóa , sửa.
- Nhóm khách hàng có tài khoản trên trang web và đã đăng nhập :
+ Có quyền đăng nhập, có thể xem, sửa thông tin của họ.
+ Có thể tìm kiếm thông tin.
+ Có thể gửi thông tin góp ý, phản hồi đến hoặc liên hệ với quản trị viên.
+ Có thể vào bình luận trên diễn đàn.
+ Nếu như muốn làm bài kiểm tra nào người dùng tiến hành chọn bài kiểm tra
đó qua một số thủ tục mà hệ thống yêu cầu.
- Nhóm khách hàng chưa có tài khoản trên trang web
+ Có quyền đăng kí làm thành viên của trang web.
+ Tìm kiếm thông tin cần thiết về bài học, bài kiểm tra ở mức độ cho phép của
khách vãng lai, tìm kiếm tin tức.
+ Tìm bài kiểm tra phù hợp , có thể đăng kí và làm bài kiểm tra.
- Yêu cầu lưu trữ:
Hệ thống cần lưu trữ các thông tin liên quan đến bài học, bài kiểm tra, thông tin
đăng nhập, các tin tức phù hợp với nội dung website.
- Thông tin đăng nhập:
Phần quản trị của website cần đảm bảo tính bảo mật. Phần này chỉ dành riêng cho
người dùng có tài khoản, vì vậy để có thể truy cập cần có định danh đăng nhập và
mật khẩu.
Trang 14
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN

NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
- Yêu cầu tra cứu :
Chức năng tra cứu thông tin về các chuyên mục mà người dùng có nhu cầu tìm
hiểu.
Kết quả xuất ra sau khi tra cứu: danh sách các thông tin (nếu có) theo tiêu chuẩn đã
được người dùng đưa ra.
Đặc tả chức năng
Chức năng hiển thị
- Module bài học
Bài học theo chuyên mục, bài học mới nhất, bài học liên quan, comment
- Module tin tức
Các tin tức chính từ ban quản trị, các tin liên quan cùng chuyên mục.
- Module bài kiểm tra
Hiển thị các bài kiểm tra theo từng chuyên mục, đưa ra đáp án sau mỗi câu, mỗi bài
test của người học.
- Module ebook, video
Thành viên có thể xem các tài liệu ebook và down về, thành viên có thể học trực
tuyến qua các video.
- Diễn đàn
Thành viên có thể đưa câu hỏi lên diễn đàn để trao đổi, thảo luận.
Admin quản lý diễn đàn và có thể trực tiếp trao đổi với các thành viên.
- Chức năng quảng cáo, liên kết website:
Hiển thị các ảnh hay flash quảng cáo, trao đổi liên kết, dán liên kết tới các website
khác.
- Chức năng đăng ký thành viên :
Đăng kí thành viên, quản lý thông tin cá nhân.
Quản Trị
- Quản trị bài học:
Quản lý danh sách các bài học cho phép publish hay không publish, xóa hoặc sửa;
quản lý các phản hồi của người học về nội dung các bài học; quản lý danh sách các

email người học đăng ký nhận bài mỗi khi có bài mới.
Trang 15
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
- Quản trị tin tức
Quản lý các nhóm tin tức, quản lý danh sách các tin tức trên hệ thống website.
- Quản trị quảng cáo
Quản lý danh sách các ảnh quảng cáo, cho phép thay đổi hình ảnh quảng cáo, quản
lý và thay đổi đường dẫn đến trang khác.
- Quản trị bài test
+ Quản lý các bài test theo từng chuyên mục như: vocabulary, grammar…
+ Email người học: quản lý danh sách các email người học đăng ký nhận bài
test mỗi khi có bài mới.
- Quản trị video, ebook
+ Quản lý các tài liệu, ebook tiếng anh chuyên ngành và chỉ cho phép thành
viên đã đăng ký vào hệ thống down tài liệu.
+ Quản lý video: quản lý video dạy tiếng anh theo từng chuyên mục.
- Quản lý forum
+ Quản lý các thắc mắc, câu hỏi của thành viên.
+ Quản lý các chuyên mục thảo luận: kỹ năng nghe, kỹ năng nói, tiếng anh
chuyên ngành…
Phân tích và thiết kế hệ thống
Thiết kế chức năng hệ thống
Bảng 3.1 Các chức năng chính của hệ thống
STT Tên chức năng
1 Hiển thị thông tin
2 Xem thông tin
3 Thêm thông tin
4 Sửa thông tin
5 Xóa thông tin

6 Làm bài kiểm tra
7 Tìm kiếm
8 Đăng nhập
Các tác nhân
Bảng 3.2 Danh sách các tác nhân
Trang 16
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Trang 17
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Trang 18
STT Tác nhân Vai trò
1 Admin Người quản trị trang web:
Actor này có vai trò cao nhất trong hệ thống, đóng
vai trò quản trị chung:
- Quản lý Video, bài học, bài kiểm tra, tin tức, :
Thêm, sửa, xóa.
- Quản lý chuyên mục: thêm, sửa, xóa chuyên mục.
- Quản lý người dùng: tạo tài khoản, thay đổi thông
tin, đổi mật khẩu nhân viên.
- Quản lý hệ thống: sao lưu, khôi phục dữ liệu…
2 Administrator Người quản lý nội dung thông tin trang web:
- Quản lý các bình luận, phản hồi.
- Quản lý các nội dung về video, tin tức, bài học,
bài kiểm tra.
3 User Khách hàng có tài khoản trong hệ thống:
- Tham gia diễn đàn.
- Gửi liên hệ.
- Xem và tìm kiếm thông tin.

- Download tài liệu.
4 Anonymous User Khách hàng chưa có tài khoản trong hệ thống:
- Xem thông tin
- Tìm kiếm thông tin (trong phạm vi cho phép)
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Mô hình hóa các chức năng
Biểu đồ Usecase (UC)
Biểu đồ Usecase Tổng quan
Trang 19
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Trang 20
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Hình 3.1 Biểu đồ UC tổng quan
Biểu đồ thể hiện chức năng Đăng nhập
Hình 3.3 Biểu đồ UC Đăng nhập
Bảng 3.3 Bảng đặc tả UC Đăng nhập
Mô tả Khi người dùng muốn thực hiện những chức năng cao hơn của
trang web thì phải đăng nhập làm thành viên.
Đối tượng Là người đã có tài khoản, bao gồm khách hàng đã đăng kí tài
khoản , người quản lý , người quản trị .
Thông tin đưa vào Người dùng cung cấp thông tin tài khoản đã đăng ký thành
công gồm: tên đăng nhập, mật khẩu
Hệ thống xử lý Hệ thống khi nhận được thông tin của người dùng sẽ kiểm tra
trong CSDL, nếu thông tin đúng sẽ thực hiện việc đăng nhập cho
người dùng, nếu không sẽ báo lỗi .
Điều kiện tiên quyết Đã có tài khoản trong hệ thống .
Thông tin trả về Thông tin mà hệ thống sẽ hiển thị cùng các chức năng mà hệ

thống cũng cấp cho từng nhóm người dùng.
Trang 21
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Biểu đồ thể hiện chức năng Quản lý bài học
Hình 3.6 Biểu đồ UC Quản lý bài học
Bảng 3.5 Bảng đặc tả UC Quản lý bài học
Mô tả Use case này cho phép người quản trị quản lí bài học trong hệ
thống, bao gồm: thêm, xóa, sửa thông tin bài học.
Đối tượng Dành cho người quản lý, người quản trị.
Thông tin đầu
vào
Thông tin bài học cần cập nhật.
Hệ thống xử lý Hệ thống cập nhật trong CSDL.
Điều kiện tiên
quyết
Người dùng có tài khoản người quản lý hoặc quản trị và đăng
nhập vào hệ thống.
Thông tin đầu ra Thông tin bài học đã cập nhật.
Trang 22
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Biểu đồ tuần tự
Biểu đồ chức năng Đăng nhập
Hình 3.12 Biểu đồ TT chức năng Đăng nhập
Biểu đồ lớp
Hình 3.20 Biểu đồ lớp
Thiết kế cơ sở dữ liệu
Danh sách các bảng cơ sở dữ liệu
Bảng 3.6 Hệ thống các bảng chính trong hệ thống:

STT Tên bảng
1 Comments
2 Content_node_field_instance
3 Content_type_ad
4 Content_type_baihoc
5 Content_type_news
6 Content_type_video
7 Fields
8 Forum
9 Node
Trang 23
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
10 Node_revision
11 User_role
12 Users
13 Menu_custom
14 Node_type
15 Menu_links
16 Vocabulary
17 Vocabulary_node_types
18 Views_display
19 Views_view
20 Visitors
Biểu đồ cơ sở dữ liệu
Hình 3.21 Biểu đồ cơ sở dữ liệu
Trang 24
XÂY DỰNG WEBSITE HỖ TRỢ VIỆC HỌC VÀ KIỂM TRA TRÌNH ĐỘ TIẾNG ANH CHUYÊN
NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG CMS DRUPAL
Trang 25

×