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

Xây dựng website hộ trợ tìm kiếm việc làm cho sinh viên

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 (1.92 MB, 62 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐA
TN
Đ
N
G
U
Y

N
TI

N
H
X
Â
Y
D

N
G
W
E
BS
IT
E
H

T
R



M
KI

M
VI

C
L
À
M
C
H

TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT
------------------  -----------------

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ SỐ: 7480201

H
À
N
ỘI
-20

HÀ NỘI - 2021



TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT
KHOA CÔNG NGHỆ THÔNG TIN
------------------  -----------------

ĐỒ ÁN TỐT NGHIỆP
CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH

ĐỀ TÀI

Xây dựng website hỗ trợ tìm kiếm việc làm cho sinh viên

SINH VIÊN THỰC HIỆN
NGUYỄN TIẾN HOÀNG
LỚP KHOA HỌC MÁY TÍNH K61

CÁN BỘ HƯỚNG DẪN
ThS.ĐẶNG VĂN NAM
BỘ MƠN KHOA HỌC MÁY TÍNH

HÀ NỘI - 2021


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

MỤC LỤC

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61


3


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

DANH MỤC HÌNH ẢNH

Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

4


Đồ án tốt nghiệp

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

Khoa học máy tính ứng dụng

5


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

LỜI CẢM ƠN
Em xin chân thành cảm ơn trường Đại học Mỏ - Địa chất, khoa Công nghệ
thông tin và bộ môn Khoa học máy tính đã tạo điều kiện cho em hoàn thành đồ án

tốt nghiệp. Nhờ đồ án tốt nghiệp này em đã có thêm rất nhiều kinh nghiệm quý báu.
Những kinh nghiệm đó sẽ giúp em nhiều trong cơng việc sau này.
Em cũng xin cảm ơn các thầy, cô trong bộ mơn, trong Khoa và trong Trường
đã tận tình giảng dạy và trang bị cho em những kiến thức cần thiết. Những kiến
thức này đã hỗ trợ cho em rất nhiều trong việc hoàn thành đồ án tốt nghiệp.
Hơn cả, em xin cảm ơn thầy giáo - Ths. Đặng Văn Nam đã hướng dẫn, cung
cấp một số tài liệu giúp em hoàn thành đồ án tốt nghiệp. Những điều thầy chỉ dẫn
giúp em có được hướng đi trong cơng việc sắp tới.
Vì thời gian có hạn và kinh nghiệm cịn thiếu nên đồ án của em khó tránh khỏi
những thiếu sót. Em mong nhận được sự chỉ bảo, đóng góp ý kiến của thầy, cơ để
em có thêm kinh nghiệm giúp hồn thành tốt đề tài của mình hơn.
Một lần nữa em xin chân thành cảm ơn.
Sinh viên thực hiện
NGUYỄN TIẾN HỒNG

Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

6


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

MỞ ĐẦU
Với sự phát triển nhảy vọt của công nghệ thông tin hiện nay, Internet ngày càng
giữ vai trò quan trọng trong các lĩnh vực khoa học kĩ thuật và đời sống. Dĩ nhiên dù
đã được nghe nói nhiều về Internet, nói một cách đơn giản, Internet là một tập hợp
máy tính nối kết với nhau, là một mạng máy tính tồn cầu mà bất kì ai cũng có thể kết
nối bằng máy PC của họ. Với mạng Internet, tin học thật sự tạo nên một cuộc cách

mạng trao đổi thông tin trong mọi lĩnh vực văn hóa, xã hội, chính trị, kinh tế...
Với cơng nghệ Word Wide Web, hay cịn gọi là Web sẽ giúp chúng ta đưa
những thông tin mong muốn của mình lên mạng Internet cho mọi người cùng xem một
cách dễ dàng với các công cụ và những ngơn ngữ lập trình khác nhau. Sự ra đời của
các ngơn ngữ lập trình cho phép chúng ta xây dựng các trang Web đáp ứng được các
yêu cầu của người sử dụng
Với lí do đó, được sự hướng dẫn và giúp đỡ của thầy Đặng Văn Nam, em đã
chọn đề tài “Xây dựng Website hỗ trợ tìm kiếm việc làm cho sinh viên” làm đề tài
cho tốt nghiệp của mình.
Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng chắc
rằng khó tránh khỏi thiếu sót. Em rất mong nhận được sự thơng cảm, những lời góp ý
và chỉ bảo tận tình của q Thầy Cơ .

Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

7


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Tổng quan của đề tài
Công Nghệ Thông Tin đang làm biến đổi sâu sắc đời sống kinh tế, văn hóa, xã
hội của các nước trên thế giới, trong đó có Việt Nam, Cơng nghệ Thơng Tin được ứng
dụng rộng rãi trong mọi lĩnh vực, thúc đẩy nhanh quá trình tăng trưởng, chuyển dịch
cơ cấu kinh tế, thay đổi cơ cấu xã hội. Công Nghệ Thông Tin góp phần tạo ra nhiều
nghành nghề mới, làm thay đổi sâu sắc các nghành công nghiệp hiện đại, tăng khả
năng cạnh tranh của các nghành công nghiệp truyền thống, hỗ trợ như viễn thông,

thương mại điện tử, dịch vụ truyền thông đa phương tiện…
Nhiều nước đang phát triển, trong đó có khơng ít quốc gia tuy nghèo và đi sau,
song lại biết tận dụng cơ hội ứng dụng và phát triển Công nghệ thông tin, nên đã tạo
được những bước phát triển vượt bậc. Tiêu biểu trong nhóm nước này phải kể đến các
nước là: Ấn Độ, Trung Quốc, Hàn Quốc..
Các tổ chức quốc tế đã đánh giá cao vai trị của Cơng Nghệ Thơng Tin đối với
q trình phát triển kinh tế - xã hội của các nước, do đó đã tổ chức nhiều diễn đàn, hội
nghị, hội thảo để tuyên truyền, quảng bá, tổng kết kinh nghiệm, đưa ra bài học, khuyến
cáo chương trình hành động, hướng dẫn các nước hoạch định chiến lược ứng dụng và
phát triển Cơng Nghệ Thơng Tin.
Cịn tại Việt Nam, ứng dụng và phát triển Cơng Nghệ Thơng Tin nhằm góp
phần giải phóng sức mạnh vật chất, trí tuệ tinh thần của tồn dân tộc, thúc đẩy cơng
cuộc đổi mới, phát triển nhanh và hiện đại hóa các nghành kinh tế, tăng cường năng
lực cạnh tranh của các doanh nghiệp, hỗ trợ có hiệu quả cho q trình chủ động hội
nhập kinh tế quốc tế, nâng cao chất lượng cuộc sống của nhân dân, đảm bảo an ninh
quốc phòng và tạo khả năng đi tắt đón đầu để thực hiện thắng lợi sự nghiệp Cơng
nghiệp hóa – Hiện đại hóa đất nước. Cơng nghệ thơng tin có rất nhiều lĩnh vực, cơng
nghệ trong đó cơng nghệ web đang là một trong những công nghệ được phát triển và
mở rộng nhất.
Những năm gần đây chúng ta đã thấy được công nghệ phát triển web đạt đến
mức kinh ngạc và độ phủ sóng của nó trên thế giới có thể nói là khắp các ngóc ngách
của mọi quốc gia, khu vực. Chưa khi nào thế giới trở nên gần với nhau như vậy thông

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

8


Đồ án tốt nghiệp


Khoa học máy tính ứng dụng

qua các trang web được tạo lập hàng ngày, hàng giờ đồng thời từ đây cơng việc tìm
kiếm thơng tin, kinh doanh cũng trở nên thuận lợi, dễ dàng hơn.
1.2 Tính cấp thiết của đề tài
Việc làm và giải quyết việc làm đang là vấn đề đáng quan tâm của toàn nhân
loại. Tình trạng thất nghiệp ngày càng trở nên phức tạp ở nhiều trường học. Là một
trong những trường có đơng sinh viên tại Hà Nội thị trường lao động Việt Nam đang
phát triển mạnh, bên cạnh đó thì tình trạng thất nghiệp cũng tăng nhanh. Điều này
không chỉ ảnh hưởng trực tiếp tới sinh viên mà còn ảnh hưởng lớn đến các vấn đề
kinh tế, chính trị, xã hội của quốc gia. Hỗ trợ giải quyết vấn đề thất nghiệp trong mùa
dịch được triển khai đã góp phần khơng nhỏ vào việc giải quyết những vấn đề trên.
Trên cơ sở những lý luận về vấn đề thất nghiệp trong mùa dịch, nghiên cứu
kinh nghiệm triển khai về vấn đề thất nghiệp trong mùa dịch của một số nước trên thế
giới, đề tài đánh giá được thực trạng triển khai về vấn đề thất nghiệp trong mùa dịch,
chỉ ra những tồn tại, hạn chế và nguyên nhân. Từ đó đề xuất một số giải pháp và kiến
nghị về việc triển khai về vấn đề thất nghiệp trong mùa dịch.
1.3 Mục tiêu nghiên cứu của đề tài
Xây dựng được một website hỗ trợ kết nối giữa các cơng ty có nhu cầu tuyển
dụng với các sinh viên phù hợp. Giúp các sinh viên có thể tìm kiếm, nộp hồ sơ vào các
vị trí, cơng việc phù hợp với năng lực, mong muốn của bản thân. Qua đó góp phần giải
quyết được bài toán về vấn đề việc làm trong giai đoạn hiện nay.
Cụ thể, website cho phép:
-

Lưu trữ các thông tin về đặc điểm cơng việc, hình thức làm việc, địa điểm làm
việc, lương thưởng đãi ngộ…. Các thông tin được lưu trữ theo cấu trúc hợp lý
thuận lợi cho việc tìm kiếm nhanh.

-


Giao diện bắt mắt, thân thiện.

-

Trang bị chức năng tìm kiếm linh hoạt giúp người dùng có thể nhanh chóng tìm
kiếm ra thơng tin cơng việc phù hợp.

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

9


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

Website phục vụ cho các đối tượng sau:
 Admin:


Người quản trị trang admin thực hiện quản lý thông tin về danh sách các
người dùng.



Thực hiện chỉnh sửa các thông tin về bài đăng, người dùng

 Sinh Viên:



Người có nhu cầu tìm việc làm xem tin về các bài đã được đăng.



Thực hiện tìm kiếm cơng việc theokhu vực, tên vị trí, hình thức làm việc.



Xem chi tiết về các bài tuyển dụng để có cái nhìn tổng quan về cơng việc
mà người dùng đang quan tâm.



Quản lý các bài đăng mà người dùng đã ứng tuyển

 Nhà tuyển dụng:


Người có nhu cầu tìm các ứng viên với các cơng việc của cơng ty cần
tìm



Quản lý các bài đăng mà người dùng đã đăng tin.

Bên cạnh việc xây dựng và hoàn thiện ứng dụng phần mềm, mục tiêu đề tài cịn
hồn thiện được báo cáo đồ án tốt nghiệp với đầy đủ nội dung, trình bày theo đúng quy
định cùng với việc học hỏi và hoàn thiện hơn về những kỹ năng phục vụ cho công việc
sau này của bản thân.

1.4 Nội dung nghiên cứu đề tài
Để đạt được mục tiêu của đề tài đã đặt ra em sẽ tập trung nghiên cứu các nội dung
sau:


Tìm hiểu các sàn giao dịch việc làm hiện nay, quy trình đăng ký và tuyển
dụng nhân sự.



Nghiên cứu quy trình xây dựng hệ thống Website.



Nghiên cứu cơng nghệ, công cụ để xây dựng và phát triển một hệ thống Web
như NodeJS, ReacJs, HTML, CSS…

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

10


Đồ án tốt nghiệp



Khoa học máy tính ứng dụng

Nghiên cứu các hệ quản trị cơ sở dữ liệu, thiết kế và xây dựng cơ sở dữ liệu


1.5 Phạm vi nghiên cứu
Trong thực tế, có rất nhiều ngành nghề, vị trí cơng việc khác nhau cần tuyển
dụng, loại hình tuyển dụng rất đa dạng. Tuy nhiên, trong nội dung của Đồ án này em
chỉ tập trung cho các vị trí cơng việc, và sinh viên trong lĩnh vực công nghệ thông tin,
lập trình viên.

Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

11


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

CHƯƠNG 2: XÁC ĐỊNH CƠNG CỤ VÀ PHÂN TÍCH BÀI TỐN
2.1 Các phần mềm và trang web hỗ trợ chính:
IDE Visual studio code
Máy chủ mysql Xampp
Trình duyệt hỗ trợ google, cốc cốc, mycrosoft edge
Ngôn ngữ chủ đạo và công cụ hỗ trợ: Nodejs, HTML, CSS, Javascript, React,
material-ui
Hỗ trợ font, icon chính Material - icon
Tài liệu tham khảo: react.org, mui.com, nodejs.org…
2.2 Phân tích yêu cầu đề tài
2.2.1 Tóm tắt hoạt động của hệ thống mà dự án sẽ được ứng dụng
-

Là một Website chuyên phục vụ tìm kiếm việc làm cho sinh viên HUMG
Là một Website động, các thông tin được cập nhật theo định kỳ.

Sinh viên truy cập vào Website có thể xem, tìm kiếm, và ứng tuyển vào vị
trí phù hợp
Các cơng việc được sắp xếp hợp lý. Vì vậy Sinh viên sẽ có cái nhìn tổng
quan về tất cả các cơng việc hiện có.
Người dùng có thể xem chi tiết từng công việc
Khi đã chọn được công việc vừa ý thì Sinh viên click vào nút ứng tuyển thì
sẽ tự động gửi cv đến nhà tuyển dụng
Người dùng vẫn có thể quay trở lại trang tìm việc để xem nhà tuyển dụng
đã xem CV của mình hay chưa.

2.2.2 Phạm vi dự án được ứng dụng
-

Dành cho đối tượng là sinh viên HUMG.

2.2.3 Đối tượng sử dụng
Có 2 đối tượng sử dụng cơ bản là người dùng và nhà quản trị:
− Sinh viên: Qua Website có thể xem thơng tin, lựa chọn những cơng
việc ưa thích ở mọi nơi.
− Nhà tuyển dụng: Xem thông tin các CV của sinh viên đã ứng tuyển.
− Nhà quản trị: Nhà quản trị có tồn quyền cập nhật, thêm, sửa xóa các
nhà tuyển dụng và sinh viên.
2.2.4 Mục đích của dự án
-

Đáp ứng nhu cầu việc làm cho sinh viên HUMG.

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

12



Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

Rút ngắn khoảng cách giữa sinh viên và nhà tuyển dụng, tạo ra một Website
trực tuyến có thể đưa nhanh thơng tin cũng như tìm kiếm việc làm phù hợp
Sản phẩm được sắp xếp có hệ thống nên sinh viên có thể dễ dàng tìm việc
một cách hiệu quả

-

2.3 Yêu cầu giao diện của website
2.3.1. Giao diện người dùng
Phải có một giao diện thân thiện dễ sử dụng:
✔ Màu sắc hài hoà làm nổi bật hình ảnh của sản phẩm, font chữ thống nhất,
tiện lợi khi sử dụng.
✔ Giới thiệu những thông tin về Công ty: Địa chỉ liên hệ của Công ty
✔ Cơng việc của Cơng ty: vị trí ứng tuyển, lương, đãi ngộ, bhyt….
2.3.2. Giao diện người quản trị:
-

Giao diện đơn giản, dễ quản lý dữ liệu.
Phải được bảo vệ bằng User & Password riêng của Admin.

2.4 Phân tích các chức năng của hệ thống
Các tác nhân của hệ thống gồm có:
Admin: là thành viên quản trị của hệ thống, có các quyền và chức năng như: tạo
các tài khoản, quản lý nhà tuyển dụng, quản trị sinh viên

 Sinh viên: là hệ thống thành viên có chức năng: Đăng kí, đăng nhập, tìm kiếm,
xem nhà tuyển dụng nào đã xem hồ sơ của mình
 Nhà tuyển dụng : Có chức năng: Đăng kí, đăng nhập, nhận CV, xem thơng tin
sinh viên, gửi thông báo trúng tuyển


2.4.1 Các chức năng của đối tượng Nhà tuyển dụng
Khi tham gia vào hệ thống thì họ có thể xem những CV mà sinh viên đã gửi
cho họ, dựa vào cv đó nhà tuyển dụng sẽ quyết định xem có nhận sinh viên đó vào
làm việc tại cơng ty đơn vị khơng


Chức năng đăng ký:
− Description: Dành cho nhà tuyển dụng đăng ký tài khoản để có thêm
nhiều chức năng cho việc nhận và đăng thơng tin tuyển dụng cũng
như có thêm nguồn nhân lực cho công ty, đơn vị…
− Input: Nhà tuyển dụng phải nhập đầy đủ các thông tin
o
o

Tên đăng nhập:
Mật khẩu:

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

13


Đồ án tốt nghiệp


Khoa học máy tính ứng dụng

o
o
o
o

Nhập lại mật khẩu
Họ và tên: Nhập họ và tên.
Email: nhập email.
Địa chỉ chỉ công ty.

Process: Kiểm tra thông tin nhập. Nếu thơng tin chính xác sẽ lưu
thơng tin vào CSDL và thêm thơng tin của thành viên đó vào CSDL.
− Output: Đưa ra thông báo đăng ký thành công hoặc yêu cầu nhập lại
nếu thông tin không hợp lệ
Chức năng đăng tin tuyển dụng:
− Description: Đăng tin cho sinh viên biết được cơng ty, nhà tuyển
dụng đang cần vị trí ứng tuyển nào
− Input:Nhập thông tin tên công ty, lương ( nếu sv đăng nhập mới được
nhìn thấy), chế độ đãi ngộ, bảo hiểm, kinh nghiệm ( nếu cần ), ngành
nghề …
− Output: Hiện chi tiết thông tin cần tuyển vị trí, tên cơng ty, lương,
bhyt…
Chức năng xem thơng tin cv của sinh viên
− Description: Cho phép xem thông tin ứng tuyển của sinh viên.
− Input: Chọn CV cần xem
− Output: Hiện chi tiết thông tin sinh viên và đồng ý phỏng vấn hoặc
không đồng ý
Chức năng xem danh sách sinh viên đã ứng tuyển

− Description: Cho phép nhà tuyển dụng xem danh sách các sinh viên
đã ứng tuyển
− Input: Click chọn vào Xem danh sách.
− Process: Lấy danh sách từ CSDL.
− Output: Hiển thị tất cả các sinh viên đã ứng tuyển
Chức năng Đăng nhập
− Description: Cho phép nhà tuyển dụng login vào hệ thống
− Input: Nhập username và password.
− Process: Kiểm tra username passoword của đối tượng có trùng với
csdl.
− Output: accessToken và chuyển đến trang chủ của nhà tuyển dụng
Chức năng Đăng xuất
− Description: Cho phép người dùng đăng xuất khỏi hệ thống khi
khơng cịn nhu cầu sử dụng hệ thống.
− Input: Người dùng click vào nút thoát trên hệ thống.












Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

14



Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

Process: Tiến hành xóa local storage lưu accessToken hoặc
refsherToken để dừng phiên làm việc của tài khoản Nhà tuyển dụng
trong hệ thống.
− Output: Quay trở lại trang hiện hành. Ẩn hết các chức năng của Nhà
tuyển dụng
• Chức năng đổi mật khẩu
− Description: Cho phép thay đổi mật khẩu.
− Input: Người dùng điền thông tin mật khẩu cũ và mới.
− Process: Kiểm tra thơng tin người dùng nhập vào. Nếu đúng thì cập
nhật các thơng tin mới, ngược lại thì khơng.
− Output: Hiển thị thông báo thành công nếu thông tin nhập vào chính
xác hoặc
hiển thị thơng báo u cầu nhập lại nếu thơng tin
khơng chính xác
• Chức năng thêm nghề nghiệp
− Description: Cho phép nhà tuyển dụng thêm nghề nghiệp.
− Input: nhập ngành nghề.
− Process: Kiểm tra ngành nghề đã có hay chưa.
− Output: Hiển thị thông báo thành công nếu chưa có ngành nghề đó,
nếu có rồi thì sẽ gửi thơng báo đã tồn tại ngành nghề đó


2.4.2 Các chức năng của đối tượng Sinh viên
Chức năng đăng nhập

− Description: Cho phép sinh viên login vào hệ thống
− Input: Nhập username và password.
− Process: Kiểm tra username passoword của đối tượng có trùng với
csdl.
− Output: accessToken và chuyển đến trang chủ, nếu sai thì sẽ hiện thị
thơng báo u cầu nhập lại
• Chức năng đăng xuất
− Description: Cho phép người dùng đăng xuất khỏi hệ thống khi
khơng cịn nhu cầu sử dụng hệ thống.
− Input: Người dùng click vào nút thốt trên hệ thống.
− Process: Tiến hành xóa local storage lưu accessToken hoặc
refsherToken để dừng phiên làm việc của tài khoản sinh viên trong
hệ thống.
− Output: Quay trở lại trang hiện hành. Ẩn hết các chức năng của Sinh
viên
• Chức năng đổi mật khẩu
− Description: Cho phép thay đổi mật khẩu.
− Input: Người dùng điền thông tin mật khẩu cũ và mới.


Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

15


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

Process: Kiểm tra thơng tin người dùng nhập vào. Nếu đúng thì cập

nhật các thơng tin mới, ngược lại thì khơng.
− Output: Hiển thị thông báo thành công nếu thông tin nhập vào chính
xác hoặc hiển thị thơng báo u cầu nhập lại nếu thơng tin khơng
chính xác
Chức năng tìm kiếm việc làm
− Description: Cho phép sinh viên tìm kiếm việc làm theo các option
phù hợp với năng lực của bản thân
− Input: Click chọn options vị trí ứng tuyển, ngành nghề, địa điểm…
− Process: Tìm kiếm các options phù với các vị trí, ngành nghề, địa
điểm trong CSDL
− Output: Hiển thị thơng tin danh sách các vị trí phù hợp để sinh viên
lựa chọn.
Chức năng tìm kiếm Phụ
− Description: Cho phép sinh viên tìm kiếm việc làm thêm phù hợp với
sinh viên 1,2,3
− Input: Click chọn options tìm kiếm phụ
− Process: Tìm kiếm các cơng việc làm thêm co trong CSDL
− Output: Hiển thị thơng tin danh sách các vị trí phù hợp để sinh viên
lựa chọn.
Chức năng tìm kiếm chính
− Description: Cho phép sinh viên tìm kiếm việc làm phù hợp với
ngành học của mình
− Input: Click chọn options tìm kiếm Chính
− Process: Tìm kiếm các cơng việc phù hợp với ngành học của sinh
viên trong CSDL
− Output: Hiển thị thơng tin danh sách các vị trí phù hợp để sinh viên
lựa chọn.
Chức năng xem chi tiết công việc nhà tuyển dụng đăng
− Description: Cho phép sinh viên xem chi tiết công việc mà nhà tuyển
dụng đăng

− Input: Click chọn Công việc của các nhà tuyển dụng đăng
− Process: Lấy dữ liệu Công việc thông qua ID nhà tuyển dụng và IdJd
của công việc
− Output: Hiện thị thông tin chi tiết của công việc
Chức năng upload CV của sinh viên
− Description: Cho phép sinh viên upload thơng tin của mình lên
website để gửi cv cho nhà tuyển dụng xem, giới hạn một cv lần
upload












Sinh viên: Nguyễn Tiến Hồng – KHMTUDK61

16


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

Input: Click Upload CV

Process: kiểm tra CV đã đúng định dạng hay chưa, nếu chưa thì sẽ
báo lỗi
− Output: Hiển thị thơng báo upload thành cơng hoặc lỗi.
• Chức năng xóa cv
− Description: Cho phép sinh viên xóa cv của mình
− Input: Click Delete
− Process: kiểm tra CV tồn tại hay không, đã tồn tại thì cho phép xóa
khỏi CSDL
− Output: Hiển thị thơng báo xóa thành cơng hoặc lỗi.
• Chức năng xem nhà tuyển dụng đã xem cv của sinh viên
− Description: Cho phép sinh viên xóa cv của mình
− Input: Click Delete
− Process: kiểm tra CV tồn tại hay không, đã tồn tại thì cho phép xóa
khỏi CSDL

Output: Hiển thị thơng báo xóa thành cơng hoặc lỗi.



2.4.3 Chức năng của Admin
Các chức năng quản lý Sinh viên
− Description: Giúp Admin có thể xóa Sinh viên ra khỏi CSDL.
− Input: Chọn Sinh viên cần xóa.
− Process: Lấy các thơng tin của Sinh viên và hiển thị ra màn hình để
chắc chắn rằng Admin xóa đúng Sinh viên cần thiết.
− Output: Load lại danh sách Sinh viên để biết được đã xoá thành cơng
Sinh viên ra khỏi CSDL
• Các chức năng quản lý Nhà tuyển dụng
− Description: Giúp Admin có thể xóa Nhà tuyển dụng ra khỏi CSDL.
− Input: Chọn Nhà tuyển dụng cần xóa.

− Process: Lấy các thơng tin của Nhà tuyển dụng và hiển thị ra màn
hình để chắc chắn rằng Admin xóa đúng Nhà tuyển dụng cần thiết.
− Output: Load lại danh sách Nhà tuyển dụng để biết được đã xố
thành cơng Nhà tuyển dụng ra khỏi CSDL


2.5

Giới thiệu một số hệ quản trị CSDL phổ biến

Cơ sở dữ liệu (tiếng Anh là database) đơn giản chỉ là một tập hợp các thông tin
được tổ chức theo một cấu trúc nhất định giúp máy tính có thể dễ dàng đọc thơng tin,
chỉnh sửa, thêm hoặc xóa dữ liệu.
Bất cứ cơ sở dữ liệu nào sau khi được tạo ra cũng cần được lưu trữ lại. Quá trình
lưu cơ sở dữ liệu này được thực hiện qua việc sử dụng hệ quản trị cơ sở dữ liệu. Hệ
quản trị cơ sở dữ liệu là chương trình phần mềm giúp thực hiện việc lưu trữ cơ sở dữ
Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

17


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

liệu. Hệ quản trị trị cơ sở dữ liệu khi lưu trữ cơ sở dữ liệu cần đảm bảo được được tính
cấu trúc trong cơ sở dữ liệu và ngoài ra cần phải hỗ trợ việc đọc, chỉnh sửa, thêm và
xóa dữ liệu trên cơ sở dữ liệu một cách dễ dàng.
Việc sử dụng các phần mềm (hệ quản trị cơ sở dữ liệu) này sẽ giúp dễ dàng thực
hiện các thao tác như tìm kiếm, lọc, xóa, chỉnh sửa hay tạo mới dữ liệu trên cơ sở dữ

liệu. Để làm được điều này trên các hệ quản trị cơ sở dữ liệu hiện nay người ta thường
sử dụng ngôn ngữ truy vấn mang tính cấu trúc: Structured Query Language hay SQL.
Hiện nay, có rất nhiều loại hệ quản trị cơ sở dữ liệu khác nhau, các hệ quản trị cơ
sở dữ liệu phổ biến hiện này bao gồm: Microsoft Access, MySQL, Oracle,
PostgreSQL, SQL,...
❖ Microsoft Office Access thường được gọi tắt là MS Access hoặc đơn giản là
Access, là một phần mềm quản lý cơ sở dữ liệu quan hệ do hãng Microsoft giữ
bản quyền. Access thường được đóng gói cùng các phần mềm khác trong bộ
Microsoft Office và được sử dụng rộng rãi trong các máy tính cài hệ điều hành
Windows. Các file Microsoft Access thường có phần mở rộng (đi) là *.mdb
hay *.mdbx (nếu là MS Access 2007). Ngoài ra cũng cịn có dạng khác. Biểu
tượng của chương trình Access là một chiếc chìa khóa. Giao diện người sử dụng
của Access bao gồm một loạt cửa sổ mở ra bên trong cửa sổ chính Access.
Cơng cụ quản lý cơ sở dữ liệu của Access bao gồm các Tables (bảng), Queries
(truy vấn, tìm kiếm), Forms (mẫu), Reports (báo cáo), Macro (các macro lệnh),
Modules (các khai báo, thư viện chương trình con). Mỗi một đối tượng trên sẽ
được hiện ra trong một cửa số riêng. Tables là công cụ xây dựng cơ sở dữ liệu
trong Access. Đây là đối tượng cơ bản. Mỗi bảng gồm tên bảng, trường dữ liệu
(field) nhận các giá trị khác nhau (như text, number, v.v…), bản ghi (records),
trường khóa (primary key). Giữa các table có liên hệ với nhau.
❖ PostgreSQL là hệ quản trị cơ sở dữ liệu được viết theo hướng mã nguồn mở và
rất mạnh mẽ. Hệ quản trị cơ sở dữ liệu này đã có hơn 15 năm phát triển, đồng
thời kiến trúc đã được kiểm chứng và tạo được lòng tin với người sử dụng về độ
tin cậy, tính tồn vẹn dữ liệu, và tính đúng đắn. PostgreSQL có thể chạy trên tất
cả các hệ điều hành, bao gồm cả Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX,
Mac OS X, Solaris, Tru64), và Windows. Do nó hồn tồn tn thủ ACID, có
hỗ trợ đầy đủ các foreign keys, joins, views, triggers, và stored procedures (trên
nhiều ngơn ngữ). Hệ quản trị này cịn bao gồm các kiểu dữ liệu SQL 2008 như:
integer, number, boolean, char, varchar, date interval, và timestamps.
PostgreSQL cũng hỗ trợ lưu trữ các đối tượng có kiểu dữ liệu nhị phân lớn, bao

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

18


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

gồm cả hình ảnh, âm thanh, hoặc video. Hệ quản trị cơ sở dữ liệu này được sử
dụng thông qua giao diện của các ngôn ngữ C / C , Java, .Net, Perl, Python,
Ruby, Tcl, ODBC…Là một hệ quản trị cơ sở dữ liệu mạnh, PostgreSQL tự hào
có các tính năng phức tạp như kiểm soát truy cập đồng thời nhiều phiên bản
(MVCC), khôi phục dữ liệu tại từng thời điểm (Recovery), quản lý dung lượng
bảng (tablespaces), sao chép không đồng bộ, giao dịch lồng nhau (savepoints),
sao lưu trực tuyến hoặc nội bộ, truy vấn phức tạp và tối ưu hóa, và viết trước
các khai báo để quản lý và gỡ lỗi. PostgreSQL hỗ trợ bộ ký tự quốc tế, hỗ trợ
bảng mã nhiều byte, Unicode, và cho phép định dạng, sắp xếp và phân loại ký
tự văn bản (chữ hoa, thường). PostgreSQL còn được biết đến với khả năng mở
rộng để nâng cao cả về số lượng dữ liệu quản lý và số lượng người dùng truy
cập đồng thời. Đã từng có những hệ thống PostgreSQL hoạt động trong mơi
trường thực tế thực hiện quản lý vượt quá 4 terabyte dữ liệu.
❖ MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở miễn phí nằm trong nhóm
LAMP (Linux - Apache - MySQL - PHP) >< Microsoft (Windows, IIS, SQL
Server, ASP/ASP.NET), vì MySQL được tích hợp sử dụng chung với apache,
PHP nên nó phổ biến nhất thế giới. Vì MySQL ổn định và dễ sử dụng (đối với
tui thì ko chắc.), có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung
cấp một hệ thống lớn các hàm tiện ích rất mạnh (vì được nhiều người hỗ trợ mã
nguồn mở mà) và MySQL cũng có cùng một cách truy xuất và mã lệnh tương
tự với ngơn ngữ SQL chính vì thế nên MySQL được sử dụng và hỗ trợ của

những lập trình viên u thích mã nguồn mở. Nhưng MySQL khơng bao qt
tồn bộ những câu truy vấn cao cấp như SQL Server. Vì vậy MySQL đáp ứng
việc truy xuất đơn giản trong quá trình vận hành của website, thích hợp cho các
ứng dụng có truy cập CSDL trên internet và có thể giải quyết hầu hết các bài
tốn trong PHP, Perl. MySQL miễn phí hồn tồn, có thể tải về MySQL từ trang
chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32
cho các hệ điều hành dòng Windows, Linux, Mac OSX, Unix, FreeBSD,
NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, …MySQL là một trong
những ví dụ rất cơ bản về hệ quản trị cơ sở dữ liệu quan hệ sử dụng ngôn ngữ
truy vấn có cấu trúc (SQL). MySQL có cơ chế phân quyền người sử dụng riêng,
mỗi người dùng có thể được quản lý một hoặc nhiều CSDL khác nhau, mỗi
người dùng có một tên truy cập (user name) và mật khẩu tương ứng để truy
xuất đến CSDL.
Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

19


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

❖ Oracle Database hay còn gọi là Oracle RDBMS hoặc đơn giản là Oracle (do

đây có lẽ là sản phẩm nổi tiếng nhất của hãng), là 1 hệ quản trị cơ sở dữ liệu
quan hệ, được phát triển và phân phối bởi tập đoàn Oracle. Phần mềm này vẫn
đang được phát triển tiếp lên những version cao hơn, và vẫn đang là 1 trong
những phần mềm quản trị database hàng đầu thế giới. Theo thơng tin từ
Wikipedia thì phần mềm này được viết bằng Assembly, C và C. Có lẽ đó là cốt
lõi chính của Oracle Database. Sau này những cơng cụ liên quan như emctl,

dbca, netca…. được viết bằng Java. Phần mềm này hỗ trợ nhiều ngôn ngữ, được
phân phối rộng khắp thế giới. Bản quyền phần mềm này thuộc dạng Proprietary,
tức là closed source software. Phần mềm này chỉ mua để sử dụng, không được
can thiệp vào mã nguồn như open source software.
❖ SQL, viết tắt của Structured Query Language (ngơn ngữ hỏi có cấu trúc), cơng
cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở
dữ liệu. SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để
tương tác với cơ sở dữ liệu quan hệ. Tên gọi ngơn ngữ hỏi có cấu trúc phần nào
làm chúng ta liên tưởng đến một công cụ (ngôn ngữ) dùng để truy xuất dữ liệu
trong các cơ sở dữ liệu. Thực sự mà nói, khả năng của SQL vượt xa so với một
công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây
dựng nên và truy xuất dữ liệu vẫn còn là một trong những chức năng quan trọng
của nó. SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản
trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
❖ Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các
cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần
dữ liệu.
❖ Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện
các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ
liệu.
❖ Điều khiển truy cập - SQL có thể được sử dụng để cấp phát và kiểm soát các
thao tác củangười sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu
❖ Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở
dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác
cập nhật cũng như các lỗi của hệ thống.
❖ MongoDB, MongoDB là một cơ sở dữ liệu tài liệu nguồn mở và cơ sở dữ liệu hàng
đầu của NoSQL được viết bằng C. MongoDB là một cơ sở dữ liệu đa nền tảng, định
hướng tài liệu cung cấp, hiệu suất cao, tính sẵn sàng cao và khả năng mở rộng dễ dàng.

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61


20


Đồ án tốt nghiệp

Khoa học máy tính ứng dụng

MongoDB hoạt động trên khái niệm về collection và document, lưu trữ dữ liệu dưới
dạng JSON (trong MongoDB được gọi là dạng BSON vì nó lưu trữ dưới dạng binary
từ 1 JSON document). MongoDB hoạt động dưới một tiến trình ngầm service, luôn
mở một cổng (Cổng mặc định là 27017) để lắng nghe các yêu cầu truy vấn, thao tác từ
các ứng dụng gửi vào sau đó mới tiến hành xử lý. Mỗi một bản ghi của MongoDB
được tự động gắn thêm một field có tên “_id” thuộc kiểu dữ liệu ObjectId mà nó quy
định để xác định được tính duy nhất của bản ghi này so với bản ghi khác, cũng như
phục vụ các thao tác tìm kiếm và truy vấn thông tin về sau. Trường dữ liệu “_id” luôn
được tự động đánh index (chỉ mục) để tốc độ truy vấn thơng tin đạt hiệu suất cao nhất.
Mỗi khi có một truy vấn dữ liệu, bản ghi được cache (ghi đệm) lên bộ nhớ Ram, để
phục vụ lượt truy vấn sau diễn ra nhanh hơn mà không cần phải đọc từ ổ cứng. Khi có
yêu cầu thêm/sửa/xóa bản ghi, để đảm bảo hiệu suất của ứng dụng mặc định
MongoDB sẽ chưa cập nhật xuống ổ cứng ngay, mà sau 60 giây MongoDB mới thực
hiện ghi toàn bộ dữ liệu thay đổi từ RAM xuống ổ cứng.

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

21


Đồ án tốt nghiệp


Khoa học máy tính ứng dụng

CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1

Xác định các tác nhân
a. Sinh viên: là người có nhu cầu tìm kiếm việc làm fulltime, parttime,
freelane…
b. Nhà tuyển dụng: là người có nhu cầu tìm kiếm ứng viên với cơng việc
phù hợp với công việc
c. Admin: là người quản lý website

3.2 Tác nhân và cách sử dụng
Tác nhân

Ca sử dụng ( Usecase)
Đăng ký, đăng nhập

Sinh viên

Cập nhật thơng tin cá nhân
Tìm kiếm công việc
Xem các công việc đã ứng tuyển
Upload CV
Ứng tuyển
Đăng ký, đăng nhập

Nhà tuyển dụng

Đăng tin tuyển ứng viên

Quản lý danh sách công việc
Đăng nhập

Admin

Quản lý Người dung
Báo cáo lượt xem
Báo cáo lượt đăng ký người dùng

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

22


Đồ án tốt nghiệp

3.2.1


Khoa học máy tính ứng dụng

Mơ hình chức năng của hệ thống
Mơ hình chức năng Server

Hình 3.1: Mơ hình chức năng Server
● Hệ Thống
o

Đăng nhập: Khi người sử dụng cần đăng nhập vào hệ thống thì phải nhập tài khoản và
mật khẩu sau khi đăng nhập chính xác thì người quản trị được thực hiện các thao tác

trong hệ thống.

o

Đăng xuất: Người dùng thoát ra khỏi hệ thống.

● Bài Đăng Tuyển dụng
o

Quản lý tin Tuyển dụng: Nhà tuyển dụng có quyền thêm, sửa, xóa bài tuyển dụng

o

Quản lý ứng tuyển : Nhà tuyển dụng xem được những ai đã ứng tuyển vào tin của
mình

● Quản lý người dung: Admin có quyền xóa hoặc sửa người dung
● Thống kê: Admin xem được thống kê lượt xem, lượt đăng ký user

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

23


Đồ án tốt nghiệp



Khoa học máy tính ứng dụng


Mơ hình Chức năng Client

Hình 3.2: Mơ hình chức năng Client
● Tìm kiếm
o Giúp sinh vien tìm kiếm theo tên vị trí tuyển dụng, địa chỉ và các

khoa ngành liên quan đến bài tuyển dụng đó
● Đăng bài tuyển dụng
o Giúp nhà tuyển dụng có thể đăng bài tuyển nhân viên theo nhu
cầu của cơng ty đó
● Quản lý người dung: Admin quản lý các tài khoản dung để đăng nhập
vào hệ thống
● Thống kê: Báo cáo các lượt xem và lượt đăng ký hàng tháng

3.2

MƠ HÌNH USECASE

Biểu đồ Usecase chỉ ra tương tác giữa các UC và tác nhân. UC biểu diễn các
chức năng của hệ thống. Tác nhân là con người hay hệ thống khác cung cấp hay
thu nhận thông tin từ hệ thống. Biểu đồ UC tập trung vào quan sát trạng thái tĩnh
của các UC trong hệ thống. Nó đặc biệt quan trọng trong việc tổ chức và mơ hình
hố hệ thống. Vì UC biểu diễn u cầu hệ thống từ góc nhìn của người dùng, cho
nên UC là chức năng mà hệ thống phải có. Biểu đồ chỉ ra tác nhân nào khởi động
UC và khi nào tác nhân nhận thông tin từ hệ thống.
Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

24



Đồ án tốt nghiệp

3.2.1

Khoa học máy tính ứng dụng

Tác nhân Sinh Viên, Nhà Tuyển dụng, Admin

Hình 3.3 tác nhân CV và NTD

Hình 3.4 Mơ hình UseCase Tác nhân Admin

Sinh viên: Nguyễn Tiến Hoàng – KHMTUDK61

25


×