đồ án 2 phát triển website giới thiệu việc làm

66 0 0
Tài liệu đã được kiểm tra trùng lặp
đồ án 2 phát triển website giới thiệu việc làm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

ĐỒ ÁN 2

PHÁT TRIỂN WEBSITE GIỚI THIỆU VIỆC LÀM

GV HƯỚNG DẪN: TS Đỗ Thị Thanh TuyềnSV THỰC HIỆN:

Dương Minh Thái -20520753

TP HỒ CHÍ MINH, 2023

Trang 2

LỜI CẢM ƠN

Lời đầu tiên, nhóm chúng em xin gửi lời cảm ơn sâu sắc đến tập thể quý thầycô trường Đại học Công Nghệ Thông Tin, đặc biệt là những giảng viên trong ngànhKỹ thuật Phần mềm đã trang bị cho chúng em có được những kiến thức căn bảnvững chắc để có thể thực hiện đồ án lần này.

Chúng em chân thành cảm ơn TS.Đỗ Thị Thanh Tuyền đã giúp đỡ chúng emtrong suốt quá trình học tập và thực hiện đồ án, sự quan tâm, giảng dạy tận tình củathầy cô đã hỗ trợ chúng em rất nhiều trong thời gian vừa qua và qua đó chúng em đãhọc hỏi được nhiều kiến thức hơn Một lần nữa nhóm xin gửi lời cảm ơn sâu sắcđến quý thầy cô.

Ngoài ra, xin cảm ơn đến tất cả sự đóng góp của các thành viên trong nhóm,những người đã chăm chỉ và hoàn thành nhiệm vụ của mình đúng hạn để đồ án cóthể hoàn thiện một cách đầy đủ nhất.

Trong quá trình thực hiện đồ án “Phát triển website giới thiệu việc làm”,nhóm chúng em đã kết hợp giữa những kiến thức căn bản và những gì được cô traođổi và truyền đạt để cố gắng hoàn thành đồ án một cách tốt nhất có thể Tuy nhiên,cũng bởi vì kiến thức của bản thân còn hạn chế, không tránh khỏi sẽ có những saisót Chính vì thế, nhóm chúng em rất mong nhận được sự quan tâm, góp ý của cô đểchúng em tiếp thu được thêm kinh nghiệm, kiến thức trong đồ án lần này, để đồ áncó thể hoàn thiện và đầy đủ hơn Qua đó rút kinh nghiệm trong những đồ án tiếptheo Sự góp ý của quý thầy cô chính là bài học quý báu và là hành trang để chúngem tiếp tục thực hiện những đồ án sau này.

Lời cuối cùng, nhóm chúng em xin chúc quý thầy cô thật nhiều sức khoẻ vàniềm vui để có thể tiếp tục giảng dạy và truyền đạt thật nhiều kiến thức bổ ích đếnnhững sinh viên khác Chúng em xin chân thành cảm ơn!

Trang 3

NHẬN XÉT CỦA GIẢNG VIÊN

Trang 4

1.4 Đối tượng, phạm vi nghiên cứu 15

Chương 2 GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG 17

Trang 5

3.1.1 Các quy trình, nghiệp vụ 23

3.1.2 Khảo sát hệ thống hiện có 23

3.2 Yêu cầu phần mềm: 26

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

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

3.4.4 Chỉnh sửa thông tin ứng viên 36

3.4.5 Tìm kiếm bài đăng tuyển dụng 37

3.4.6 Xem chi tiết thông tin bài đăng tuyển dụng 38

3.4.7 Tìm kiếm thông tin nhà tuyển dụng 39

3.4.8 Xem chi tiết thông tin nhà tuyển dụng 40

3.4.9 Ứng tuyển vào bài đăng tuyển dụng 41

Trang 6

3.5 Phân tích và thiết kế Cơ sở dữ liệu 42

Trang 7

4.3.3 Quên mật khẩu / Lấy lại mật khẩu 54

4.3.4 Trang chủ 55

4.3.5 Trang danh sách tất cả việc làm 58

4.3.6 Trang danh sách nhà tuyển dụng 59

4.3.7 Trang chỉnh sửa thông tin user 60

4.3.8 Trang thông tin chi tiết bài tuyển dụng 62

4.3.9 Trang thông tin chi tiết nhà tuyển dụng 63

Trang 8

MỤC LỤC BẢNG

Bảng 3.1 Danh sách các actor chính của hệ thống 30

Bảng 3.2 Use-case tổng quát 30

Bảng 3.3 Bảng mô tả use-case đăng nhập 31

Bảng 3.4 Bảng mô tả use-case đăng ký 32

Bảng 3.5 Bảng mô tả trường dữ liệu use-case đăng ký 33

Bảng 3.6 Bảng mô tả use case quên mật khẩu 34

Bảng 3.7 Bảng mô tả use-case chỉnh sửa thông tin user 36

Bảng 3.8 Bảng mô tả use-case tìm kiếm bài đăng tuyển dụng 37

Bảng 3.9 Bảng mô tả use-case xem chi tiết thông tin bài đăng tuyển dụng 38

Bảng 3.10 Bảng mô tả use-case tìm kiếm thông tin nhà tuyển dụng 39

Bảng 3.11 Bảng mô tả use-case xem chi tiết thông tin nhà tuyển dụng 40

Bảng 3.12 Bảng mô tả use case ứng tuyển vào bài đăng tuyển dụng 41

Trang 9

Bảng 4.2 Mô tả trang đăng kí 52

Bảng 4.3 Mô tả trang quên mật khẩu / trang tạo mới mật khẩu 55

Bảng 4.4 Mô tả trang chủ 57

Bảng 4.5 Mô tả trang tất cả việc làm 59

Bảng 4.6 Mô tả modal chi tiết danh sách ứng tuyển 60

Bảng 4.7 Mô tả tạo mới bài tuyển dụng 61

Bảng 4.8 Mô tả chỉnh sửa bài tuyển dụng 63

Trang 10

Hình 3.1 Giao diện TopCV 1 24

Hình 3.2 Giao diện TopCV 2 24

Hình 3.3 Giao diện TopCV 3 25

Hình 3.4 Giao diện Vietnamworks 1 26

Hình 3.5 Use-case tổng quát 29

Hình 3.6 Sơ đồ logic 42

Hình 4.1 Giao diện trang đăng nhập 51

Hình 4.2 Giao diện trang đăng kí 52

Hình 4.3 Giao diện trang quên mật khẩu / tạo mới mật khẩu 54

Hình 4.4 Giao diện trang chủ 56

Hình 4.5 Giao diện trang tất cả việc làm 58

Hình 4.6 Modal chi tiết danh sách ứng tuyển 59

Hình 4.7 Giao diện tạo mới bài tuyển dụng 60

Trang 11

Hình 4.8 Giao diện chỉnh sửa bài tuyển dụng 62Hình 4.9 Giao diện danh sách nhà tuyển dụng 63

Trang 12

TÓM TẮT ĐỒ ÁN

Đồ án “Phát triển website giới thiệu việc làm” sẽ tập trung vào việc xây dựngthêm một nền tảng website dành cho người tìm việc có thể tiếp cận dễ dàng hơn vớicác thông tin đăng tuyển của trung tâm việc làm Trung tâm giới thiệu việc làm làmột loại hình trung tâm được lập ra để có thể tiếp nhận các yêu cầu tuyển dụngnhân lực của các nhà tuyển dụng và thông qua đó, trung tâm sẽ tiếp nhận các lượtứng tuyển của các ứng viên xin việc và gửi thông tin cho nhà tuyển dụng liên quan.

Người tìm việc có thể tiếp cận đầy đủ các thông tin đăng tuyển của trung tâmgiới thiệu việc làm bằng cách đăng ký tài khoản và đăng nhập vào hệ thống bằng tàikhoản vừa được đăng ký trước đó Quá trình đăng ký tài khoản yêu cầu người dùngnhập một số thông tin cần thiết để tiện cho việc quản lý ứng tuyển sau này

Người tìm việc có thể ứng tuyển vào một bài đăng tuyển dụng do trung tâmđăng tuyển Các thông tin liên quan đến việc ứng tuyển như: Họ tên, email, chứngminh nhân dân / căn cước công dân, số điện thoại,… Sẽ được lấy từ thông tin tàikhoản người dùng khi họ đăng ký.

Người dùng cũng có thể bình luận vào các bài đăng, tạo thêm cơ sở chonhững người tìm việc đánh giá tính xác thực của thông tin đăng tuyển cũng như chiasẻ thông tin tuyển dụng với nhau.

Nhóm đã phân tích các yêu cầu nghiệp vụ rõ ràng, mặc dù còn gặp nhiềuthiếu sót và phải chỉnh sửa Kết quả thu được trong giai đoạn thiết kế như kiến trúchệ thống, cơ sở dữ liệu, giao diện được thể hiện Trong giai đoạn thực hiện, front-end và back-end được phát triển song song sử dụng thư viện ReactJS và ViteJSframework cho front-end và Node.js với ExpressJS framework cho back-end,database là MySQL cũng như môi trường phát triển là Visual Studio Code.

Báo cáo đề tài được chia thành 05 chương như sau:

Trang 13

- Chương 01 Mở đầu, giới thiệu tổng quan: Trong chương đầu tiên, trình

bày sơ lược về tổng quan của đề tài Từ đó đặt ra mục tiêu và hướng giải quyết chovấn đề, cũng như xác định đối tượng và phạm vi thực hiện.

- Chương 02 Xác định và phân tích yêu cầu: Trong chương 2, trình bày

quy trình khảo sát hiện trạng của nhóm, các kết quả khảo sát thu được và tổng kếtcác yêu cầu của khách hàng, thông qua đó xác định hướng đi, cách xây dựng đề tài.

- Chương 03 Phân tích và thiết kế hệ thống: Trong chương 3 nhóm thực

hiện phân tích và trình bày các sơ đồ trong việc phân tích và thiết kế website giớithiệu việc làm.

- Chương 04 Cài đặt và triển khai hệ thống: Ở chương 4, nhóm tiến hành

triển khai cài đặt hệ thống

- Chương 05 Tổng kết: Ở chương này, nhóm trình bày lại kết quả nghiên

cứu về lý thuyết và thực tiễn cùng với một số hạn chế còn tồn đọng và hướng pháttriển trong tương lai của đề tài.

Trang 14

Chương 1.MỞ ĐẦU, GIỚI THIỆU TỔNG QUAN ĐỀ TÀI1.1.Lý do chọn đề tài

Việc làm đã luôn là nhu cầu của con người để có thể kiếm được thu nhập vàchăm sóc cho bản thân, gia đình; tạo ra của cải vật chất cho cộng đồng và cho xãhội Với việc xã hội ngày càng giàu mạnh, phát triển, cơ hội công việc cho ngườidân là rất nhiều Nhưng đi kèm theo đó cũng là những yêu cầu lớn hơn của các nhàtuyển dụng đối với trình độ tay nghề cũng như thái độ làm việc của người lao độngđược tuyển dụng, dẫn đến việc mọi người có thể gặp khó khăn trong việc có thểkiếm được một công việc thực sự phù hợp với năng lực cũng như nhu cầu của bảnthân.

Hiện nay có rất nhiều các trung tâm giới thiệu việc làm cung cấp cho ngườitìm việc và nhà tuyển dụng những sự lựa chọn phù hợp nhất bao gồm cả nhu cầutuyển dụng lẫn khả năng tìm kiếm được công việc như mong muốn Tiếp nối nềntảng quản lý bài đăng và hỗ trợ tìm việc làm được xây dựng từ đồ án 1, nhóm đãquyết định xây dựng một nền tảng giúp cho người tìm việc có thể tiếp cận dễ dànghơn với các thông tin việc làm của trung tâm.

1.2.Mục đích đề tài

- Cung cấp cho người tìm việc một nền tảng có thể tiếp cận dễ dàng các danhsách việc làm phù hợp với nhu cầu, năng lực của người tìm việc thông qua bộ lọc.

- Giúp cho người tìm việc có thể ứng tuyển dễ dàng hơn.

- Cung cấp trải nghiệm tốt hơn thông qua giao diện và tương tác chỉnh chu.

1.3.Đối tượng, phạm vi nghiên cứu1.3.1 Đối tượng

a. Người tìm việc

Trang 15

- Họ sẽ có thể ứng tuyển, xem các thông tin chi tiết của các bài đăng tuyểndụng cũng như thông tin của các nhà tuyển dụng.

- Họ cũng có thể bình luận vào các bài đăng tuyển dụng và để lại đánh giádựa trên thang điểm 1 – 5.

● Cho phép người tìm việc ứng tuyển vào bài đăng tuyển dụng.

● Tích hợp công cụ tìm kiếm việc làm nhiều tiêu chí: tạo ra công cụ tìm kiếmbài ứng tuyển với nhiều tiêu chí.

● Khuyến nghị công việc dựa trên lịch sử tra cứu người dùng.

1.4.Đối tượng, phạm vi nghiên cứu

Trong quá trình thực hiện đề tài, nhóm đã sử dụng một số công cụ để phụcvụ cho việc triển khai đề tài, bao gồm:

- Hệ điều hành: Windows 10.- Ngôn ngữ sử dụng: Javascript.

- Công cụ quản lý Cơ sở dữ liệu: MySQL.- Công cụ vẽ sơ đồ phân tích thiết kế: StarUML.- Thư viện sử dụng:

● Front-end: ReactJS, ViteJS.● Back-end: NodeJS, ExpressJS.- Công cụ quản lý mã nguồn: Github.

Trang 16

- Môi trường phát triển: Visual Studio Code.

Trang 17

Chương 2 GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG2.1.ReactJS[1]:

Hình 2.1 Icon ReactJS

ReactJS là một thư viện JavaScript phổ biến và mạnh mẽ được sử dụng choviệc xây dựng giao diện người dùng (UI) động và tương tác trên nền web Đượcphát triển bởi Facebook, ReactJS cho phép bạn xây dựng các ứng dụng web độc lập,tái sử dụng và dễ bảo trì.

ReactJS sử dụng mô hình component, trong đó mọi thành phần giao diện đềuđược xem như các "components" riêng biệt Các components có thể được xếp chồnglên nhau để tạo thành các giao diện phức tạp và có thể tái sử dụng lại trong nhiềuphần của ứng dụng Điều này giúp tăng tính module và sự linh hoạt trong quá trìnhphát triển.

Một điểm đáng chú ý của ReactJS là khả năng quản lý trạng thái (state) củaứng dụng ReactJS cung cấp một cách tiếp cận hiệu quả để quản lý và cập nhậttrạng thái của các components, giúp bạn xây dựng giao diện động và phản hồinhanh chóng với các thay đổi trong dữ liệu.

Trang 18

ReactJS cũng có cộng đồng phát triển mạnh mẽ, với nhiều tài liệu, công cụvà các thư viện bổ trợ khác nhau Các công cụ như React Router cho điều hướng,Redux cho quản lý trạng thái toàn cục, và Axios cho gửi yêu cầu HTTP là chỉ mộtsố ví dụ.

Hình 2.2 Icon NodeJS

Node.js là một môi trường chạy code JavaScript phía server Dựa trênJavaScript Engine của Google Chrome, Node.js cho phép xây dựng các ứng dụngmáy chủ hiệu quả, linh hoạt và có khả năng mở rộng.

Với Node.js, bạn có thể viết JavaScript để xử lý các tác vụ máy chủ như xâydựng API, quản lý tệp tin, xử lý yêu cầu HTTP, và tương tác với cơ sở dữ liệu.Node.js cung cấp các công cụ và thư viện phong phú để giúp bạn xây dựng các ứngdụng web, dịch vụ web và ứng dụng phần mềm phức tạp.

Một trong những lợi ích lớn của Node.js là kiến trúc không chặn blocking architecture), cho phép xử lý đa luồng hiệu quả và đồng thời xử lý hàngngàn kết nối mà không gây tắc nghẽn Điều này giúp tăng hiệu suất và khả năng mởrộng của ứng dụng, đồng thời cung cấp trải nghiệm đáng tin cậy cho người dùng.

(non-Ngoài ra, Node.js có một hệ sinh thái phát triển mạnh mẽ với hàng ngàn cácmodule và gói mã nguồn mở có sẵn thông qua NPM (Node Package Manager) Bạn

Trang 19

có thể sử dụng NPM để tìm kiếm, cài đặt và quản lý các gói phần mềm từ cộngđồng, giúp nâng cao năng suất và tiết kiệm thời gian phát triển.

Hình 2.3 Icon ExpressJS

Express.js là một framework web phía máy chủ được xây dựng dựa trênNode.js Với Express.js, bạn có thể nhanh chóng và dễ dàng xây dựng các ứng dụngweb và API mạnh mẽ

Express.js tập trung vào việc tạo ra các ứng dụng web đơn giản, nhẹ nhàngvà linh hoạt Nó cung cấp một cách tiếp cận đơn giản để định nghĩa các tuyếnđường (routes), xử lý yêu cầu và phản hồi, quản lý trạng thái và gửi dữ liệu đến vàtừ cơ sở dữ liệu

Với cú pháp rõ ràng và hướng dẫn tốt, Express.js giúp bạn nhanh chóng xâydựng các ứng dụng web linh hoạt và dễ bảo trì Nó cho phép bạn tạo cácmiddleware tùy chỉnh để xử lý các yêu cầu trung gian, kiểm soát quyền truy cập vàthực hiện các chức năng phụ trợ khác.

Trang 20

Express.js cũng có một cộng đồng phát triển đông đảo và hệ sinh thái mởrộng với nhiều middleware và gói mở rộng hữu ích Bạn có thể sử dụng cácmiddleware như Body-parser, Cookie-parser, và Passport để giúp xử lý dữ liệu vàxác thực.

Hình 2.4 Icon Redux

Redux là một thư viện quản lý trạng thái (state management) phổ biến trongứng dụng web phát triển bằng JavaScript Nó giúp bạn quản lý trạng thái ứng dụngmột cách dễ dàng và hiệu quả.

Redux sử dụng mô hình quản lý trạng thái theo kiểu "single source of truth"(nguyên tắc duy nhất một nguồn thông tin đúng đắn) Trạng thái của toàn bộ ứngdụng được lưu trữ trong một cấu trúc dữ liệu duy nhất gọi là "store" Mọi thay đổitrạng thái đều phải thông qua các "actions" (hành động) và được xử lý bởi các"reducers" (bộ xử lý).

Với Redux, bạn có thể tách biệt trạng thái và logic ứng dụng khỏi giao diệnngười dùng Điều này giúp tạo ra các ứng dụng dễ bảo trì, kiểm thử và tái sử dụngmã Bạn cũng có thể dễ dàng theo dõi và gỡ lỗi các thay đổi trạng thái của ứng dụngtrong thời gian thực.

Trang 21

Redux không bị ràng buộc với bất kỳ framework hoặc thư viện giao diệnngười dùng cụ thể nào, cho phép bạn tích hợp nó vào bất kỳ ứng dụng JavaScriptnào Nó đã trở thành một trong những công cụ phổ biến trong cộng đồng phát triểnweb và có nhiều hỗ trợ từ các thư viện và công cụ khác như React, Angular và Vue.

ViteJS là công cụ tương tự webpack, Rollup, Parcel …

Mục đích của Vite là giải quyết những bài toán hiệu năng của các Javascript toolhiện tại.

- Tốc độ khởi động server nhanh:

Vite cải thiện tốc độ khởi động của dev server bằng cách chia các modules thành 2nhóm: dependencies và source code.

 Dependencies là hầu hết plain javascript không thay đổi trong quá trình dev.Một số dependencies lớn (ví dụ component libraries với hàng trăm modules)khá tốn kém để xử lý Vite pre-bundles các dependencies này sử dụngesbuild Esbuild viết bằng Go và pre-bundles nhanh gấp 10-100x các bundlerkhác dựa trên javasript.

 Source code chứa non-plain javascript cần chuyển đổi (ví dụ JSX, CSS, Vue…), và được edit thường xuyên Tất cả source code không cần thiết phải loadcùng lúc Vite xử lý source code qua native ESM Điều này cho phép trìnhduyệt đảm nhận 1 phần công việc bundler Vite chỉ cần chuyển đổi và xử lýsource code khi browser request nó Code đằng sau import động chỉ được xửlý khi thật sự sử dụng trên màn hình hiện tại.

- Tốc độ update nhanh:

Khi 1 file được chỉnh sửa trong hệ thống bundler-based, sẽ là không hiệu quả khibuild lại toàn bộ bundle Tốc độ update sẽ chậm lại khi dự án lớn lên Ở 1 sốbundler, dev server chạy bundling trong memory do vậy chỉ cần vô hiệu hóa 1 phầnmodule graph khi 1 file thay đổi, nhưng nó vẫn cần cấu trúc lại toàn bộ bundle và

Trang 22

reload web page Cấu trúc lại bundle là tốn kém, và tải lại page sẽ làm mất trạngthái hiện tại của ứng dụng Cho nên 1 số bundlers hỗ trợ Hot Module Replacement(HMR): cho phép 1 module có thể “hot replace” mà không ảnh hưởng đến toàn bộpage Tuy nhiên thực tế tốc độ HMR cũng giảm đi đáng kể khi kích thước ứng dụngtăng lên.

Hình 2.5 Icon ViteJS

Trang 23

Chương 3 XÁC ĐỊNH, PHÂN TÍCH YÊU CẦU3.1.Khảo sát hiện trạng:

3.1.1 Các quy trình, nghiệp vụ

- Quy trình ứng tuyển vào bài đăng tuyển dụng.

- Quy trình tìm kiếm thông tin (bài đăng tuyển dụng, nhà tuyển dụng,…).- Quy trình quản lý thông tin người tìm việc.

- Quy trình quản lý thông tin nhà tuyển dụng.

- Quy trình quản lý các bình luận của người tìm việc trong bài đăng tuyển dụng.3.1.2 Khảo sát hệ thống hiện có

Trong quá trình thực hiện và xây dựng phần mềm của nhóm, nhóm đã có tiếnhành khảo sát một số các trang web có chức năng tương tự như: TopCV,Vietnamworks Vì phần mềm của nhóm khá đặc thù nên nhóm đã chọn lọc cẩn thậnnhững gì có thể tham khảo và làm theo Cả hai trang đều có quản lý riêng các bàituyển dụng và nhà tuyển dụng riêng, về mặt này nhóm có thể tham khảo.

1 TopCV[6]:

Với trang TopCV, việc sử dụng cùng một tông sắc cho các thành phần tronggiao diện của mình được nhóm đánh giá rất cao vì sẽ không làm cho trang web trởnên quá tương phản nhưng vẫn có thể đảm bảo thỏa mãn được người dùng nhờ việcthiết kế thành phần giao diện gọn gàng cũng như các tương tác giao diện phù hợp.

Trang 24

Hình 3.6 Giao diện TopCV 1

Hình 3.7 Giao diện TopCV 2

Trang 25

Ngoài ra cũng có một số trang như chi tiết bài tuyển dụng của trang cũngđược bố trí khá hợp lý nên nhóm đã cân nhắc đưa bố cục này vào trang chi tiết bàituyển dụng của nhóm.

Hình 3.8 Giao diện TopCV 3

2 Vietnamworks[7]:

Trang 26

Hình 3.9 Giao diện Vietnamworks 1

Với trang này không có quá nhiều để nhóm có thể tham khảo ngoại trừ cácthẻ việc làm được thiết kế khá đẹp Ngoài đó ra thì trang có cách bố trí chưa thực sựquá ấn tượng và có phần hơi rối vì có các quảng cáo chen ngang tầm nhìn khá khóchịu.

3.2.Yêu cầu phần mềm:3.2.1 Yêu cầu chức năng

● Chức năng lưu trữ thông tin:

○ Thông tin người tìm việc: Mã ứng viên, tên khách hàng,CMND/CCCD,…

○ Thông tin nhà tuyển dụng: Mã nhà tuyển dụng, tên nhà tuyểndụng, địa chỉ trụ sở, địa chỉ chi nhánh,…

○ Thông tin bài đăng tuyển dụng: Mã bài tuyển dụng, mã nhàtuyển dụng, kỹ năng, yêu cầu công việc, thâm niên tối thiểu,loại hình công việc (full-time, part-time,…), địa chỉ, ghi chú,số lượng ứng tuyển,…

Trang 27

○ Thông tin các bài báo: Mã bài báo, thông tin bài báo, …

● Chức năng tra cứu thông tin:

○ Tra cứu thông tin bài tuyển dụng.○ Tra cứu thông tin nhà tuyển dụng.

● Chức năng tính toán:

○ Tính toán số ngày còn lại của bài đăng tuyển dụng.

● Chức năng thống kê, báo cáo:

○ Thống kê tổng số lượng bài tuyển dụng đã đăng.

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

● Yêu cầu giao diện:

o Thiết kế giao diện đơn giản nhưng vẫn đảm bảo tính chỉn chu,tạo cảm giác thoải mái cho người dùng.

o Dễ thao tác đảm bảo tính tương tác cao, thuận tiện cho ngườidùng sử dụng.

o Các thao tác chuyển trang không rườm ra nhằm đảm bảo hiệusuất công việc.

o Màu sắc giao diện không gây khó chịu cho mắt người dùng,đáp ứng nhu cầu làm việc thời gian dài trên hệ thống.

Trang 28

o Hệ thống thực hiện chính xác các thao tác truy vấn cơ sở dữliệu dựa trên thao tác của người dùng.

● Yêu cầu về hiệu suất:

o Hệ thống có thể chạy 24/7 mà không gặp phải các lỗi nghiêmtrọng dẫn đến sập hệ thống, thất thoát dữ liệu,….

o Thời gian phản hồi của hệ thống đảm bảo đủ nhanh và mượtmà (thời gian phản hồi chậm nhất không quá 2 giây).

o Hệ thống có thể thực đa tác vụ đối với các thao tác và xử lýtrên hệ thống.

● Yêu cầu về bảo mật:

o Thực hiện việc phân quyền trên hệ thống.

o Dữ liệu không bị thất thoát trong quá trình làm việc trên hệthống.

Trang 29

3.3.Sơ đồ use-case

3.3.1 Sơ đồ use-case tổng quát

Hình 3.10 Use-case tổng quát

Trang 30

3.3.2 Danh sách Actor

Bảng 3.1 Danh sách các actor chính của hệ thống

1 Người tìm việc Người thao tác chính của trang web.

2 Đăng ký Người dùng có thể tiến hành đăng ký tài khoảnđể có thể đăng nhập vào hệ thống.

3 Quên mật khẩu

Người dùng có thể lấy lại mật khẩu trong trườnghợp quên mật khẩu của tài khoản đã đăng kýtrên hệ thống.

4 Chỉnh sửa thông tinứng viên

Người dùng có thể chỉnh sửa thông tin của bảnthân đã khai báo trên hệ thống.

5 Tìm kiếm bài đăngtuyển dụng

Người dùng có thể tìm kiếm các bài đăng đượclưu trữ trên hệ thống.

6 Xem chi tiết thông tinbài đăng tuyển dụng

Người dùng có thể xem chi tiết thông tin của bàiđăng tuyển dụng sau khi đăng nhập.

7 Tìm kiếm thông tin Người dùng có thể tìm kiếm thông tin của nhà

Trang 31

nhà tuyển dụng tuyển dụng được lưu trữ trên hệ thống.8 Xem chi tiết thông tin

3.4.Đặc tả Use-case và sơ đồ hoạt động (Activity Diagram)3.4.1 Đăng nhập

Bảng 3.3 Bảng mô tả use-case đăng nhập

Tên Use-caseĐăng nhập

Mô tả

Cho phép người tìm việc truy cập vào hệ thống bằng tàikhoản đã được đăng ký từ trước để tiếp cận đầy đủ với cácchức năng của hệ thống.

Kích hoạt Người dùng khởi động trang web và chọn mục đăng nhập.Actor Người tìm việc

Use-case liên quan Không có.

Tiền điều kiện Người dùng đã đăng xuất khỏi hệ thống.

Hậu điều kiện Người dùng đăng nhập vào hệ thống thành công.Luồng sự kiện

1 Hệ thống hiển thị form đăng nhập.

2 Người dùng nhập tên tài khoản và mật khẩu và chọn đăngnhập.

Trang 32

3 Hệ thống kiểm tra thông tin đăng nhập.

4 Thông báo đăng nhập thành công và chuyển hướng đếntrang chủ.

Bảng 3.4 Bảng mô tả use-case đăng ký

Tên Use-caseĐăng ký

Mô tả Người dùng có thể tiến hành đăng ký tài khoản để có thể đăng nhập vào hệ thống.

Kích hoạt Người dùng vào mục đăng nhập và chọn đăng ký.Actor Người tìm việc.

Use-case liên quan Không có.Tiền điều kiện Không có.

Hậu điều kiện

Hệ thống thông báo tài khoản có lưu trữ thông tin của ngườidùng được khởi tạo và lưu trữ thành công trên hệ thống Hệthống chuyển hướng người dùng đến trang đăng nhập.

Luồng sự kiệnchính

1 Hệ thống hiển thị giao diện đăng ký.

2 Người dùng nhập các trường thông tin cần thiết (*)3 Hệ thống kiểm tra định dạng thông tin.

4 Thông báo tài khoản đã được tạo thành công

Trang 33

Luồng sự kiện phụ

3a Hệ thống thông báo các trường nhập bị sai và yêu cầungười dùng nhập lại.

=> Use-case tiếp tục ở bước 2.

3b Hệ thống thông báo có trường nhập bị trùng thông tin sovới thông tin lưu trữ trong hệ thống.

=> Use-case tiếp tục ở bước 2.Luồng sự kiện

ngoại lệ

Người dùng thoát khỏi giao diện.=> Use-case dừng lại.

(*) Mô tả các trường dữ liệu:

Bảng 3.5 Bảng mô tả trường dữ liệu use-case đăng ký

Tên trường dữ liệu Kiểu dữ liệu Bắt buộc ? Nhiều giá trị ?

Ngày đăng: 15/05/2024, 09:29

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan