TÓM TẮT ĐỒ ÁN Đồ án “Xây dựng hệ thống quản lý và hỗ trợ tìm việc làm” sẽ tập trung vào việc lưu trữ các bài đăng tuyển dụng cũng như là lưu trữ thông tin các nhà tuyển dụng và người tìm
Trang 1LÀM
GV HƯỚNG DẪN: TS Đỗ Thị Thanh Tuyền
SV THỰC HIỆN:
Cấn Đức Quang - 20520716 Dương Minh Thái - 20520753
Trang 2LỜ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ầy
cô trường Đại học Công Nghệ Thông Tin, đặc biệt là những giảng viên trong ngành
Kỹ thuật Phần mềm đã trang bị cho chúng em có được những kiến thức căn bản vững chắc để có thể thực hiện đồ án lần này
Chúng em chân thành cảm ơn Ths.Đỗ Thị Thanh Tuyền đã giúp đỡ chúng em trong 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ủa thầ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 “Xây dựng hệ thống quản lý và hỗ trợ tìm 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 sai só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, để đồ
án có thể hoàn thiện và đầy đủ hơn Qua đó rút kinh nghiệm trong những đồ án tiếp theo 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úng
em 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 đến những sinh viên khác Chúng em xin chân thành cảm ơn!
Trang 3NHẬN XÉT CỦA GIẢNG VIÊN
TP Hồ Chí Minh, ngày 20 tháng 7 năm 2023
Người nhận xét
(Ký tên và ghi rõ họ tên)
Trang 54.2.2.1 Thêm bài tuyển dụng 23
4.2.2.7 Cập nhật trạng thái ứng tuyển của ứng viên 34
4.3.2.7 Cập nhật trạng thái ứng tuyển của ứng viên 69
Trang 64.3.3.2 Tìm kiếm hồ sơ ứng viên 73
Trang 75.3 Màn hình giao diện 92
Trang 8Mục lục bảng
Bảng 4-1 Danh sách Actor 19
Bảng 4-2 Use-case tổng quát 21
Bảng 4-3 Bảng mô tả use-case đăng nhập 22
Bảng 4-4 Bảng mô tả use-case thêm bài tuyển dụng 24
Bảng 4-5 Mô tả use-case chỉnh sửa thông tin bài tuyển dụng 26
Bảng 4-6 Mô tả use-case xem chi tiết bài tuyển dụng 28
Bảng 4-7 Mô tả use-case tìm kiếm bài tuyển dụng 30
Bảng 4-8 Mô tả use-case xóa bài tuyển dụng 31
Bảng 4-9 Mô tả use-case ứng tuyển cho bài tuyển dụng 33
Bảng 4-10 Mô tả use-case cập nhật trạng thái ứng tuyển của ứng viên 35
Bảng 4-11 Mô tả use-case thêm hồ sơ ứng viên mới 38
Bảng 4-12 Mô tả use-case tìm kiếm hồ sơ ứng viên 41
Bảng 4-13 Mô tả use-case chỉnh sửa hồ sơ ứng viên 43
Bảng 4-14 Mô tả use-case xem chi tiết ứng viên 45
Bảng 4-15 Mô tả use-case thêm hồ sơ nhà tuyển dụng 48
Bảng 4-16 Mô tả use-case tìm kiếm hồ sơ nhà tuyển dụng 50
Bảng 4-17 Mô tả use-case xem chi tiết hồ sơ nhà tuyển dụng 52
Bảng 4-18 Mô tả use-case chỉnh sửa nhà tuyển dụng 55
Bảng 4-19 Mô tả bảng Posts 85
Bảng 4-20 Mô tả bảng Postcareers 86
Bảng 4-21 Mô tả bảng Postdistricts 86
Bảng 4-22 Mô tả bảng Candidates 87
Bảng 4-23 Mô tả bảng Candidateposts 87
Bảng 4-24 Mô tả bảng Candidatedistricts 88
Bảng 4-25 Mô tả bảng Candidatecareers 88
Bảng 4-26 Mô tả bảng Careers 88
Bảng 4-27 Mô tả bảng Companies 89
Trang 9Bảng 4-29 Mô tả bảng Districts 89
Bảng 4-30 Mô tả bảng Positions 90
Bảng 4-31 Mô tả bảng Reports 90
Bảng 4-32 Mô tả bảng Users 90
Bảng 4-33 Mô tả bảng Workingytpes 91
Bảng 4-34 Mô tả bảng Academiclevels 91
Bảng 5-1 Mô tả thành phần đăng nhập 93
Bảng 5-2 Mô tả trang chủ 94
Bảng 5-3 Mô tả danh sách bài tuyển dụng 96
Bảng 5-4 Mô tả chi tiết thông tin bài tuyển dụng 97
Bảng 5-5 Mô tả modal ứng tuyển cho ứng viên 98
Bảng 5-6 Mô tả modal chi tiết danh sách ứng tuyển 99
Bảng 5-7 Mô tả tạo mới bài tuyển dụng 102
Bảng 5-8 Mô tả chỉnh sửa bài tuyển dụng 104
Bảng 5-9 Mô tả danh sách nhà tuyển dụng 105
Bảng 5-10 Mô tả chi tiết nhà tuyển dụng 106
Bảng 5-11 Mô tả thêm mới nhà tuyển dụng 107
Bảng 5-12 Mô tả chỉnh sửa nhà tuyển dụng 109
Bảng 5-13 Mô tả danh sách ứng viên 110
Bảng 5-14 Mô tả thêm mới ứng viên 112
Bảng 5-15 Mô tả chỉnh sửa ứng viên 114
Bảng 5-16 Mô tả chi tiết thông tin ứng viên 115
Trang 10Mục lục hình
Hình 2-1 Icon ReactJS 6
Hình 2-2 Icon NodeJS 7
Hình 2-3 Icon ExpressJS 8
Hình 2-4 Icon Redux 9
Hình 3-1 Sơ đồ cơ cấu tổ chức của trung tâm việc làm 11
Hình 3-2 Giao diện TopCV 1 12
Hình 3-3 Giao diện TopCV 2 13
Hình 3-4 Giao diện TopCV 3 14
Hình 3-5 Giao diện Vietnamworks 1 14
Hình 4-1 Use-case tổng quát 18
Hình 4-2 Sơ đồ hoạt động chức năng đăng nhập 23
Hình 4-3 Sơ đồ hoạt động chức năng thêm bài tuyển dụng 25
Hình 4-4 Sơ đồ hoạt động chức năng chỉnh sửa bài tuyển dụng 27
Hình 4-5 Sơ đồ hoạt động chức năng xem chi tiết bài tuyển dụng 29
Hình 4-6 Sơ đồ hoạt động chức năng tìm kiếm bài tuyển dụng 30
Hình 4-7 Sơ đồ hoạt động chức năng xóa bài tuyển dụng 32
Hình 4-8 Sơ đồ hoạt động chức năng ứng tuyển cho bài tuyển dụng 34
Hình 4-9 Sơ đồ hoạt động chức năng cập nhật trạng thái người đã ứng tuyển 36
Hình 4-10 Sơ đồ hoạt động thêm hồ sơ ứng viên mới 39
Hình 4-11 Sơ đồ hoạt động chức năng tìm kiếm hồ sơ ứng viên 41
Hình 4-12 Sơ đồ hoạt động chức năng chỉnh sửa hồ sơ ứng viên 44
Hình 4-13 Sơ đồ hoạt động chức năng xem chi tiết hồ sơ ứng viên 46
Hình 4-14 Sơ đồ hoạt động chức năng thêm hồ sơ nhà tuyển dụng 49
Hình 4-15 Sơ đồ hoạt động chức năng tìm kiếm hồ sơ nhà tuyển dụng 51
Hình 4-16 Sơ đồ hoạt động chức năng xem chi tiết một hồ sơ nhà tuyển dụng 53
Hình 4-17 Sơ đồ hoạt động chức năng chỉnh sửa nhà tuyển dụng 55
Hình 4-18 Sơ đồ tuần tự chức năng đăng nhập 56
Trang 11Hình 4-20 Sơ đồ tuần tự chức năng quản lý bài tuyển dụng 57
Hình 4-21 Sơ đồ tuần tự chức năng thêm bài tuyển dụng 58
Hình 4-22 Sơ đồ lớp chức năng thêm bài đăng tuyển dụng 59
Hình 4-23 Sơ đồ tuần tự chức năng chỉnh sửa bài đăng tuyển dụng 60
Hình 4-24 Sơ đồ lớp chức năng chỉnh sửa bài đăng tuyển dụng 61
Hình 4-25 Sơ đồ tuần tự chức năng xem chi tiết bài tuyển dụng 62
Hình 4-26 Sơ đồ lớp chức năng xem chi tiết bài tuyển dụng 63
Hình 4-27 Sơ đồ tuần tự chức năng tìm kiếm nhà tuyển dụng 64
Hình 4-28 Sơ đồ lớp chức năng tìm kiếm nhà tuyển dụng 65
Hình 4-29 Sơ đồ tuần tự chức năng xóa bài tuyển dụng 66
Hình 4-30 Sơ đồ lớp chức năng xóa bài tuyển dụng 66
Hình 4-31 Sơ đồ tuần tự chức năng ứng tuyển cho bài tuyển dụng 67
Hình 4-32 Sơ đồ lớp chức năng ứng tuyển cho bài tuyển dụng 68
Hình 4-33 Sơ đồ tuần tự chức năng cập nhật trạng thái ứng tuyển ứng viên 69
Hình 4-34 Sơ đồ lớp chức năng cập nhật trạng thái ứng tuyển ứng viên 70
Hình 4-35 Sơ đồ tuần tự chức năng thêm hồ sơ ứng viên 71
Hình 4-36 Sơ đồ lớp chức năng thêm hồ sơ ứng viên 72
Hình 4-37 Sơ đồ tuần tự chức năng tìm kiếm hồ sơ ứng viên 73
Hình 4-38 Sơ đồ lớp chức năng tìm kiếm hồ sơ ứng viên 73
Hình 4-39 Sơ đồ tuần tự chức năng xem chi tiết hồ sơ ứng viên 74
Hình 4-40 Sơ đồ lớp chức năng xem chi tiết hồ sơ ứng viên 75
Hình 4-41 Sơ đồ tuần tự chức năng chỉnh sửa sửa hồ sơ ứng viên 76
Hình 4-42 Sơ đồ lớp chức năng chỉnh sửa hồ sơ ứng viên 77
Hình 4-43 Sơ đồ lớp chức năng xem lịch sử ứng tuyển 78
Hình 4-44 Sơ đồ tuần tự chức năng xem chi tiết hồ sơ nhà tuyển dụng 79
Hình 4-45 Sơ đồ lớp chức năng xem chi tiết hồ sơ nhà tuyển dụng 80
Hình 4-46 Sơ đồ tuần tự chức năng thêm hồ sơ nhà tuyển dụng 81
Hình 4-47 Sơ đồ lớp chức năng thêm hồ sơ nhà tuyển dụng 81
Hình 4-48 Sơ đồ tuần tự chức năng tra cứu hồ sơ nhà tuyển dụng 82
Trang 12Hình 4-49 Sơ đồ lớp chức năng tra cứu hồ sơ nhà tuyển dụng 82
Hình 4-50 Sơ đồ tuần tự chức năng chỉnh sửa hồ sơ nhà tuyển dụng 83
Hình 4-51 Sơ đồ lớp chức năng chỉnh sửa hồ sơ nhà tuyển dụng 83
Hình 4-52 Sơ đồ logic 84
Hình 5-1 Giao diện đăng nhập 93
Hình 5-2 Giao diện trang chủ 94
Hình 5-3 Giao diện danh sách bài tuyển dụng 95
Hình 5-4 Giao diện chi tiết thông tin bài tuyển dụng 96
Hình 5-5 Modal ứng tuyển cho ứng viên 98
Hình 5-6 Modal chi tiết danh sách ứng tuyển 99
Hình 5-7 Giao diện tạo mới bài tuyển dụng 100
Hình 5-8 Giao diện chỉnh sửa bài tuyển dụng 102
Hình 5-9 Giao diện danh sách nhà tuyển dụng 104
Hình 5-10 Giao diện chi tiết nhà tuyển dụng 105
Hình 5-11 Giao diện thêm mới nhà tuyển dụng 106
Hình 5-12 Giao diện chỉnh sửa nhà tuyển dụng 108
Hình 5-13 Giao diện danh sách ứng viên 109
Hình 5-14 Giao diện thêm mới ứng viên 111
Hình 5-15 Giao diện chỉnh sửa ứng viên 113
Hình 5-16 Giao diện chi tiết thông tin ứng viên 115
Trang 13TÓM TẮT ĐỒ ÁN
Đồ án “Xây dựng hệ thống quản lý và hỗ trợ tìm việc làm” sẽ tập trung vào việc lưu trữ các bài đăng tuyển dụng cũng như là lưu trữ thông tin các nhà tuyển dụng
và người tìm việc Trung tâm tư vấn 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ụng nhâ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
Các nhà tuyển dụng sẽ tới trung tâm để đăng ký đăng thông tin các việc làm cần tuyển lên trên hệ thống Nhà tuyển dụng sẽ cung cấp các thông tin cần thiết và nhân viên trung tâm sẽ tiến hành lưu trữ thông tin của nhà tuyển dụng cũng như thông tin của các công việc họ muốn tuyển dụng
Khi người tìm việc đến, nhân viên tư vấn sẽ tư vấn cho người tìm việc dựa trên nhu cầu việc làm, năng lực của bản thân và nhân viên tư vấn sẽ tiến hành nhập liệu vào hệ thống để tìm ra công việc phù hợp với khách Nếu người tìm việc có nhu cầu muốn ứng tuyển vào công việc này, nhân viên sẽ tiến hành lấy thông tin cá nhân của khách để ứng tuyển cho công việc đó
Ngoài ra, đối với khách hàng đã từng ứng tuyển tại trung tâm, nhân viên tư vấn sẽ có thể dựa vào lịch sử ứng tuyển của người tìm việc để xem xét cách tư vấn đối với khách hàng đó
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ều thiế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úc hệ 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 cho front-end và Node.js với Express framework cho back-end, công cụ phát triển Visual Studio Code
Báo cáo đề tài được chia thành 05 chương như sau:
Trang 14- 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 cho vấ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ết cá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ế hệ thống tư vấn
hỗ trợ 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át triển trong tương lai của đề tài
Trang 15Chương 1 MỞ ĐẦU, GIỚI THIỆU TỔNG QUAN ĐỀ TÀI
1.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ười dâ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ản thâ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ười tì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ầu tuyển dụng lẫn khả năng tìm kiếm được công việc như mong muốn Và nắm bắt được điều đó, nhóm đã quyết định xây dựng một nền tảng giúp cho việc quản lý thông tin việc làm trở nên dễ dàng hơn và hiệu quả
- 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ứu
1.3.1 Đối tượng
Trang 16- Họ sẽ có thể đặt hàng, xem các mục trong menu và giá cả cũng như theo dõi trạng thái đơn hàng của họ thông qua trang web
- Họ sẽ là trung gian, trực tiếp trao đổi với các nhà tuyển dụng, người lao động, cũng như sẽ thao tác trang web
Bên cạnh việc có các khả năng sử dụng các chức năng mà nhân viên trung tâm
có thể làm quản lý các nhân viên trung tâm, quản lý danh sách các khách hàng hiện tại, báo cáo số lượng ứng tuyển – bài tuyển dụng, đồng thời cập nhật lại các kỹ năng nghề nghiệp thông qua trang web
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ục vụ
Trang 17- 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
Trang 18Chương 2 GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG
2.1 ReactJS:
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 cho việc xây dựng giao diện người dùng (UI) động và tương tác trên nền web Được phá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ồng lê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ều phầ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ình phá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ật trạng thái của các components, giúp bạn xây dựng giao diện động và phản hồi nhanh chóng với các thay đổi trong dữ liệu
Trang 19ReactJS 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ột số ví dụ
2.2 NodeJS:
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ên JavaScript Engine của Google Chrome, Node.js cho phép xây dựng các ứng dụng má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ây dự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 ứng dụ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 (non-blocking architecture), cho phép xử lý đa luồng hiệu quả và đồng thời xử lý hàng ngà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
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ác module và gói mã nguồn mở có sẵn thông qua NPM (Node Package Manager) Bạn
Trang 20có 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
2.3 ExpressJS:
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ên Node.js Với Express.js, bạn có thể nhanh chóng và dễ dàng xây dựng các ứng dụng web 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àng và 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ây dựng các ứng dụng web linh hoạt và dễ bảo trì Nó cho phép bạn tạo các middleware 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 21Express.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ác middleware như Body-parser, Cookie-parser, và Passport để giúp xử lý dữ liệu và xác thực
2.4 Redux:
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ụng mộ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ộ ứng dụ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 đổi trạng thái đều phải thông qua các "actions" (hành động) và được xử lý bởi các
Trang 22đã trở thành một trong những công cụ phổ biến trong cộng đồng phát triển web và có nhiều hỗ trợ từ các thư viện và công cụ khác như React, Angular và Vue.
Trang 23Chương 3 XÁC ĐỊNH,PHÂN TÍCH YÊU CẦU
3.1 Khảo sát hiện trạng:
3.1.1 Khảo sát cơ cấu tổ chức
Hình 3-1 Sơ đồ cơ cấu tổ chức của trung tâm việc làm
3.1.2 Các quy trình, nghiệp vụ
- Quy trình quản lý hồ sơ người tìm việc làm
- Quy trình quản lý công tác ứng tuyển
- Quy trình quản lý hồ sơ bài tuyển dụng
- Quy trình quản lý thông tin nhà tuyển dụng
- Quy trình quản lý các nhận xét của người tìm việc và nhà tuyển dụng
Trang 24những gì có thể tham khảo và làm theo Cả hai trang đều có quản lý riêng các bài tuyể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:
Với trang TopCV, việc sử dụng cùng một tông sắc cho các thành phần trong giao 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ệc thiế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
Hình 3-2 Giao diện TopCV 1
Trang 25Hình 3-3 Giao diện TopCV 2
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ài tuyển dụng của nhóm
Trang 26Hình 3-4 Giao diện TopCV 3
2 Vietnamworks:
Trang 27Với trang này không có quá nhiều để nhóm có thể tham khảo ngoại trừ các thẻ 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 của nhân viên tiếp tân: Mã nhân viên tiếp tân, tên nhân viên, ngày sinh, giới tính, CMND/CCCD,…
○ Thông tin người tìm việc: Mã khách hàng, 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ển dụ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,…
● 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
○ Tra cứu thông tin người ứng tuyển trong một bài tuyển dụng
○ Tra cứu thông tin người tìm việc (mở rộ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
○ Tính toán chấm công cho nhân viên (mở rộng)
● Chức năng thống kê, báo cáo:
○ Thống kê số lượng bài tuyển dụng đã đăng trong ngày
○ Thống kê tổng số lượng bài tuyển dụng đã đăng
○ Thống kê số lượng người ứng tuyển tại trung tâm
Trang 28○ Thống kê số lượng nhà tuyển dụng đã, đang đăng bài tại trung tâm
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ười dùng sử dụng
o Các thao tác chuyển trang không rườm ra nhằm đảm bảo hiệu suấ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
● Yêu cầu về vận hành:
o Hệ thống có thể chạy được trên máy tính bàn, máy tính xách tay
o Hệ thống có thể chạy trên các hệ điều hành phổ biến như: Windows, Linux, MacOS,…
o Hệ thống hiển thị đầy đủ các thông tin quản lý trong cơ sở dữ liệu
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êm trọ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ượt mà (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
Trang 29● 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 30Chương 4 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
4.1 Sơ đồ use-case
4.1.1 Sơ đồ use-case tổng quát
Hình 4-1 Use-case tổng quát
Trang 314.1.2 Danh sách Actor
STT Tên Actor Ý nghĩa/ Ghi chú
1 Nhân viên Người thao tác chính của hệ thống
Bảng 4-1 Danh sách Actor
4.1.3 Danh sách use-case
1 Đăng nhập Đăng nhập vào hệ thống
2 Quản lý danh sách
bài tuyển dụng
Quản lý thêm, xóa, sửa bài tuyển dụng; tìm kiếm bài tuyển dụng, xem danh sách ứng tuyển của bài đăng đó cũng như cập nhật trạng thái ứng tuyển của các ứng viên trong bài đăng đó
3 Thêm bài tuyển dụng
Người dùng có thể thêm một bài tuyển dụng vào trong danh sách quản lý các bài tuyển dụng của
Trang 326 Cập nhật số lượng
người đã ứng tuyển
Người dùng có thể cập nhật số lượng cần tuyển của bài tuyển dụng đó
7 Xóa bài tuyển dụng
Người dùng có thể ẩn các bài tuyển dụng không muốn thao tác nữa khỏi danh sách bài tuyển dụng trên giao diện
8 Chỉnh sửa thông tin
Quản lý thêm, sửa, tìm kiếm ứng viên Ngoài
ra có thể xem chi tiết thông tin của ứng viên
Trang 3316
Quản lý danh sách
hồ sơ nhà tuyển dụng
Quản lý thêm, sửa, tra cứu hồ sơ các nhà tuyển dụng Ngoài ra có thể xem chi tiết thông tin nhà tuyển dụng cũng như xem các bài đăng tuyển dụng mà nhà tuyển dụng đang có
17 Thêm hồ sơ nhà tuyển
dụng
Người dùng có thể thêm thông tin nhà tuyển dụng mới vào trong danh sách quản lý nhà tuyển dụng của hệ thống
18 Tra cứu hồ sơ nhà
Tên Use-case Đăng nhập
Mô tả Người dùng có thể truy cập vào hệ thống thông qua tài
khoản đã được cấp trước
Kích hoạt Người dùng khởi động hệ thống
Trang 34Actor Nhân viên
Use-case liên quan Không có
Tiền điều kiện Không có
Hậu điều kiện Nhân viên đăng nhập vào hệ thống
Luồng sự kiện
chính
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 đăng nhập
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 đến trang chủ
Trang 35Hình 4-2 Sơ đồ hoạt động chức năng đăng nhập
4.2.2 Quản lý bài tuyển dụng
4.2.2.1 Thêm bài tuyển dụng
Tên Use-case Thêm bài tuyển dụng
Mô tả Người dùng (nhân viên) thêm thông tin về bài tuyển dụng,
thông tin đã nhập sẽ được lưu lại
Kích hoạt Nhân viên chọn nút “Tạo mới bài tuyển dụng”
Actor Nhân viên
Use-case liên quan Không có
Trang 36Tiền điều kiện - Nhân viên phải đăng nhập vào hệ thống
Hậu điều kiện
- Nếu thành công: hệ thống sẽ cập nhật thêm bài tuyển dụng mới, thông báo tạo mới thành công và điều hướng về trang danh sách các bài tuyển dụng
- Nếu thất bại: hệ thống sẽ thông báo lỗi, và yêu cầu người dùng nhập lại thông tin
Luồng sự kiện
chính
1 Nhân viên nhấn vào nút “Tạo mới bài tuyển dụng”
2 Hệ thống sẽ hiển thị màn hình tạo mới thông tin bài tuyển dụng
3 Nhân viên nhập các trường cần thiết và bấm xác nhận
4 Hệ thống xác nhận thông tin nhân viên đã nhập có đúng định dạng hay không
5 Hệ thống tạo mới bài tuyển dụng
6 Hệ thống thông báo tạo mới thành công và hiển thị lại trang quản lý bài tuyển dụng
Luồng sự kiện phụ
4a Hệ thống thông báo trường dữ liệu bị nhập sai và yêu cầu người dùng nhập lại Trường hợp này sẽ yêu cầu nhân viên thực hiện lại bước 3
Trang 37Hình 4-3 Sơ đồ hoạt động chức năng thêm bài tuyển dụng
4.2.2.2 Chỉnh sửa bài tuyển dụng
Tên Use-case Chỉnh sửa thông tin bài tuyển dụng
Mô tả Người dùng (nhân viên) chỉnh sửa thông tin bài tuyển dụng,
thông tin thay đổi sẽ được lưu lại
Kích hoạt Nhân viên chọn nút “Chỉnh sửa” của bài tuyển dụng đó Actor Nhân viên
Trang 38Use-case liên quan Không có
Tiền điều kiện
- Nhân viên phải đăng nhập vào hệ thống
- Bài tuyển dụng cần chỉnh sửa phải có ở trong hệ thống trước
đó
Hậu điều kiện
- Nếu thành công: hệ thống sẽ cập nhật lại bài tuyển dụng, thông báo chỉnh sửa thành công và điều hướng về trang danh sách các bài tuyển dụng
Luồng sự kiện
chính
1 Nhân viên nhấn vào nút “Chỉnh sửa”
2 Hệ thống sẽ hiển thị chỉnh sửa với các ô nhập dữ liệu có sẵn giá trị tương ứng
3 Nhân viên chỉnh sửa các thông tin cần thiết và bấm xác nhận
4 Hệ thống xác nhận thông tin nhân viên đã nhập có đúng định dạng hay không
5 Hệ thống cập nhật thông tin bài tuyển dụng tương ứng
6 Hệ thống thông báo cập nhật thành công và hiển thị lại trang quản lý bài tuyển dụng
Luồng sự kiện phụ
4a Hệ thống thông báo trường dữ liệu bị nhập sai và yêu cầu người dùng nhập lại Trường hợp này sẽ yêu cầu nhân viên phải thực hiện lại bước 2
Trang 39Hình 4-4 Sơ đồ hoạt động chức năng chỉnh sửa bài tuyển dụng
4.2.2.3 Xem chi tiết bài tuyển dụng
Tên Use-case Xem chi tiết một bài tuyển dụng
Mô tả Người dùng (nhân viên) nhấn chọn một bài tuyển dụng trong
danh sách, hiển thị chi tiết bài tuyển dụng đó
Kích hoạt Người dùng nhấn vào tên của bài tuyển dụng trong danh sách
các bài tuyển dụng
Actor Nhân viên
Trang 40Use-case liên quan
<<extend>>: Chỉnh sửa bài tuyển dụng
<<extend>>: Xóa bài tuyển dụng
<<extend>>: Ứng tuyển
<<extend>>: Cập nhật tình trạng ứng tuyển
Tiền điều kiện
- Nhân viên đã đăng nhập vào hệ thống
- Bài tuyển dụng đã có trong hệ thống và được hiển thị lên giao diện
Hậu điều kiện - Người dùng được điều hướng sang trang chi tiết của bài
tuyển dụng tương ứng
Luồng sự kiện
chính
1 Người dùng nhấp chọn vào tiêu đề của bài tuyển dụng
2 Hệ thống sẽ điều hướng đến trang chi tiết của bài tuyển dụng