Trong đó, nội dung bao gồm: - Chương 1: Trình bày mô tả bài toán, liệt kê các tác nhân và một số yêu cầu nghiệp vụ - Chương 2: Mô tả về kiến trúc của hệ thống, các công nghệ sử dụng và p
Mô tả bài toán
Trong bối cảnh xã hội ngày càng phát triển, mức chi tiêu ngày càng tăng, nhu cầu tìm kiếm việc làm cũng ngày càng lớn Nhu cầu tuyển dụng cũng không ngừng mở rộng và phát triển để đáp ứng yêu cầu của thị trường
JobsFinder là một ứng dụng di động được tạo ra nhằm trở thành cầu nối hỗ trợ những người có nhu cầu tìm kiếm việc làm bán thời gian tiếp cận các doanh nghiệp có nhu cầu tuyển dụng và ngược lại JobsFinder tập trung vào việc quản lý, đăng tải và tìm kiếm ứng viên phù hợp, theo dõi tiến độ công việc, và quản lý thu chi một cách tiện lợi và hiệu quả nhất.
Các tác nhân của hệ thống
Các tác nhân chính của hệ thống: Quản trị viên (Admin), Người tuyển dụng, Người tìm kiếm việc
- Quản trị viên (Admin): chịu trách nhiệm theo dõi và quản lý trạng thái các tài khoản, xem được thông tin chi tiết của người dùng, theo dõi và xử lí các yêu cầu hỗ trợ hoặc khiếu nại về ứng dụng hoặc người dùng khác Điều phối dòng tiền cho tài khoản người tuyển dụng và theo dõi hoa hồng doanh thu tạo ra từ ứng dụng
- Người tuyển dụng: là người có nhu cầu sử dụng lao động, tham gia tuyển dụng và tìm kiếm các ứng viên phù hợp với yêu cầu công việc, theo dõi hoạt động công việc cũng như chi phí đã bỏ ra theo tháng hoặc năm
- Người tìm kiếm việc: là người có nhu cầu tìm kiếm việc làm bán thời gian, tham giá ứng tuyển vào các công việc được đăng tuyển bởi người tuyển dụng, theo dõi được thu nhập từ các công việc nói chung và từng loại công việc nói riêng
Yêu cầu về nghiệp vụ hệ thống
1.3.1 Yêu cầu phi chức năng:
- Hoạt động ổn định, tương thích trên các điện thoại chạy hệ điều hành Android, phiên bản khác nhau
- Hoạt động trơn tru mượt mà, không bị crash app hoặc tải dữ liệu quá lâu
- Bảo mật thông tin các giao dịch và thông tin của khách hàng
- Có khả năng mở rộng, bảo trì hoặc cập nhật mà không làm gián đoạn hoạt động ứng dụng
- Giao diện thân thiện, trực quan, dễ dàng học cách sử dụng trong vòng 20 phút
Thư viện ĐH Thăng Long
+ Yêu cầu phải đăng nhập để tương tác với các chức năng theo từng vai trò + Bật tắt được đăng nhập bằng sinh trắc học
+ Cập nhật thông tin cá nhân của người dùng + Hiển thị ngôn ngữ Anh - Việt tùy theo ngôn ngữ mặc định hiện tại của máy + Viết báo cáo, phản hồi được gửi tới admin
+ Nạp tiền vào ví trên ứng dụng thông qua ZaloPay, rút tiền ra thẻ ngân hàng
+ Gửi thông báo về một số hoạt động giữa các tác nhân: người quản trị (admin), người tuyển dụng, người tìm việc khi tương tác với nhau
- Về phía người tuyển dụng:
+ Hiển thị màn hình chính (home) vai trò người tuyển dụng + Hiển thị thông tin cá nhân có thêm các trường riêng dành cho người tuyển dụng + Đăng tuyển công việc
+ Hiển thị được danh sách và hủy các công việc đã đăng tuyển + Phê duyệt hoặc từ chối ứng viên ứng tuyển công việc đã đăng + Hiển thị lịch sử được đánh giá, thông tin của ứng viên
+ Hiển thị danh sách các công việc đang hoạt động + Xác nhận điểm danh cho nhân viên
+ Hiển thị biểu đồ thống kê về số công việc đã đăng mỗi tháng/năm, tổng chi phí theo tháng/năm, tổng chi phí theo loại công việc
+ Hiển thị danh sách lịch sử các công việc đã hoàn thành và đánh giá nhân viên sau khi công việc kết thúc
- Về phía người tìm việc:
+ Hiển thị màn hình hình chính (home) vai trò người tìm việc + Hiển thị thông tin cá nhân có thêm các trường riêng dành cho người tìm việc + Tìm kiếm công việc mới theo bộ lọc, tìm kiếm theo từ khóa
+ Hiển thị thông tin của người tuyển dụng
4 + Ứng tuyển, hủy ứng tuyển các công việc + Hiển thị các công việc đã ứng tuyển + Hiển thị danh sách các công việc đã trúng tuyển và đang hoạt động + Gửi được yêu cầu điểm danh cho người tuyển dụng
+ Hiển thị các thông tin sau khi được phê duyệt điểm danh: thời gian, ghi chú, lương trong ngày, tổng số ngày cần làm, tổng thu nhập tích lũy
+ Hiển thị đánh giá từ các người tuyển dụng đối với các công việc đã hoàn thành
+ Hiển thị biểu đồ thống kê thu nhập theo tháng/năm, thu nhập theo từng loại công việc, số giờ làm việc mỗi tháng/năm
- Về người quản trị (Admin):
+ Hiển thị danh sách tất cả thông tin, tài khoản của toàn bộ người dùng + Vô hiệu hóa hoặc kích hoạt quyền đăng nhập của người dùng
+ Thêm tiền vào ví của người dùng + Hiển thị biểu đồ thống kê về số lượng tài khoản đăng ký mới theo năm/tháng, doanh thu hoa hồng của ứng dụng + Nhận được báo cáo, phản hồi từ người dùng gửi lên
Thư viện ĐH Thăng Long
Đặc tả yêu cầu nghiệp vụ
1.4.1 Các quy trình nghiệp vụ chính Ảnh 1.1 Sơ đồ quy trình đăng tải công việc Ảnh 1.2 Sơ đồ quy trình ứng tuyển công việc
6 Ảnh 1.3 Sơ đồ quy trình phê duyệt ứng viên Ảnh 1.4 Sơ đồ quy trình điểm danh
Thư viện ĐH Thăng Long
Bảng 1.1 Giải thích tên gọi và ý nghĩa ký hiệu của sơ đồ quy trình
STT Ký hiệu Tên gọi Ý nghĩa
(Start) Đại diện cho điểm bắt đầu của quy trình
(End) Đại diện cho điểm kết thúc quy trình
3 Mũi tên Hướng đi của quy trình
(Activity) Đại diện cho các hoạt động hoặc các bước trong quy trình
Khối điều kiện, tiếp tục xử lý dựa trên dữ liệu trả về có hoặc không
1.4.1.1.4.2 Các yêu cầu nghiệp vụ
1.4.1.11.4.2.1 BR1: Đăng ký, đăng nhập, quản lý thông tin người dùng
- BR1.1: Đăng ký: Phải đảm bảo khả năng đăng ký tạo tài khoản mới và phân theo vai trò người dùng lựa chọn
+ BR1.2.1: Đăng nhập bằng mật khẩu: Đảm bảo khả năng đăng nhập bằng mật khẩu cho người dùng
+ BR1.2.2: Đăng nhập sinh trắc: Đảm bảo khả năng đăng nhập bằng sinh trắc nếu trước đó người dùng đã đăng nhập bằng mật khẩu và kích hoạt chức năng này
- BR1.3: Đăng xuất: Đảm bảo khả năng đăng xuất của người dùng
- BR1.4: Quản lý người dùng: đảm bảo admin can thiệp được vào khoản người dùng: thêm tiền, trạng thái tài khoản, người dùng có thể chỉnh sửa thông tin cá nhân
1.4.1.21.4.2.2 BR2: Đăng tải công việc
- BR2.1: Tạo công việc mới: Người tuyển dụng có thể tạo công việc mới thông qua một form điền thông tin chi tiết công việc
- BR2.2: Nhập thông tin chi tiết: Người dùng phải nhập đầy đủ thông tin chi tiết về công việc như tiêu đề, mô tả, yêu cầu, và thời gian
- BR2.3: Điều kiện đăng tải: Hệ thống sẽ kiểm tra số dư trong ứng dụng của người tuyển dụng và trừ đủ số tiền cần thiết sau khi được tính toán trước khi được công việc đăng tải lên hệ thống
- BR2.4: Đăng tải công việc: Sau khi được kiểm duyệt, công việc sẽ được đăng tải và hiển thị trên hệ thống tìm kiếm và danh sách bài đăng của người tuyển dụng
1.4.1.31.4.2.3 BR3: Ứng tuyển công việc
- BR3.1: Tìm kiếm công việc: Người tìm việc có thể tìm kiếm công việc thông qua các tiêu chí khác nhau như thời gian, lương, vị trí, lĩnh vực, công ty,…
- BR3.2: Tham gia ứng tuyển: Người tìm việc có thể viết lời giới thiệu và gửi đơn ứng tuyển nếu cảm thấy phù hợp
- BR3.3: Nhận thông báo: Người dùng sẽ nhận được thông báo về tình trạng ứng tuyển thông qua thông báo trên hệ thống
1.4.1.41.4.2.4 BR4: Phê duyệt ứng viên
- BR4.1: Xem danh sách ứng viên: người tuyển dụng xem được danh sách tất cả các ứng viên gửi đơn ứng tuyển công việc
- BR4.2: Xem xét hồ sơ: người tuyển dụng xem xét thông tin cá nhân và đánh giá từ các người tuyển dụng khác đối với người tham gia ứng tuyển
- BR4.3: Phê duyệt hoặc từ chối: Sau khi xem xét và phỏng vấn, quản lý sẽ phê duyệt hoặc từ chối ứng viên thông qua hệ thống
- BR4.4: Cập nhật công việc tự động: nếu ứng viên được phê duyệt, công việc sẽ được cập nhật tự động bởi hệ thống
- BR5.1: Đăng nhập điểm danh: Khi được phê duyệt và bắt đầu làm việc, nhân viên phải đăng nhập vào hệ thống, chọn công việc và thực hiện gửi yêu cầu điểm danh trước mỗi ca làm
Thư viện ĐH Thăng Long
9 - BR5.2: Xác nhận điểm danh: cho phép người tuyển dụng nhận yêu điểm danh và thông tin và sẽ được xác nhận bởi bên quản lý công việc Kết thúc ca làm việc tiếp tục xác nhận thời gian ra về với hệ thống một lần nữa
- BR5.3: Lưu trữ thông tin: Hệ thống lưu trữ thông tin điểm danh để phục vụ cho việc theo dõi tổng kết và báo cáo thống kê về sau, cho phép nhân viên có thể xem được thông tin điểm danh từng ngày của mình
- BR6.1: Nạp tiền thông qua ZaloPay: Đảm bảo khả năng nạp tiền vào ví của người dùng thông qua ứng dụng ZaloPay cho người dùng
- BR6.2: Rút tiền ra thẻ ngân hàng: Chắc chắn rằng người dùng có thể thêm thẻ ngân hàng vào ứng dụng và thực hiện rút tiền từ ví trong app về thẻ ngân hàng
- BR6.3: Giao dịch của ví trong ứng dụng: đảm bảo khả năng tính toán, hoạt động chính xác của ví khi thực hiện các hoạt động trong ứng dụng
1.4.1.71.4.2.7 BR7: Thống kê dữ liệu
- BR7.1: Thống kê tổng thu nhập/chi tiêu: cho phép người dùng xem được thống kê về tổng thu nhập/chi tiêu mỗi tuần, có thể lựa chọn xem theo tháng/năm theo dạng biểu đồ cột (Bar chart)
- BR7.2: Thống kê tổng số thu nhập/chi tiêu theo từng loại công việc: người dùng xem được thu nhập/chi tiêu từ cụ thể các công việc được phân chia theo loại theo dạng biểu đồ tròn (Pie chart)
- BR7.3: Thống kê tổng số giờ làm việc: cho phép nhân viên xem được tổng số giờ đã làm mỗi tháng (12 tháng) theo dạng biểu đồ đường, có thể chọn xem từng năm
- BR7.4: Thống kê tổng số việc đã đăng: đảm bảo người tuyển dụng xem được số công việc đã đăng tải mỗi tháng theo biểu đồ đường, lựa chọn xem từng năm
- BR7.5: Thống kê tổng số tài khoản mở mới: cho phép người quản trị hệ thống xem được số lượng tài khoản mở mới của người dùng từng tuần theo biểu đồ cột, lựa chọn xem được theo tháng/năm
Kiến trúc hệ thống
Ảnh 2.1 Kiến trúc của hệ thống phần mềm
Firebase là một cơ sở dữ liệu hoạt động trên nền tảng đám mây (cloud), được thiết kế để hỗ trợ phát triển ứng dụng di đông và web nó cung cấp sẵn một số dịch vụ như: chứng thực (Authenticattion), Realtime Database, Cloud Firestore [1] Với mục đích để lập trình viên tập trung phát triển ứng dụng mà không cần tốn quá nhiều công sức vào xây dựng cơ sở dữ liệu Khác với kiển trúc thông thường, Firebase giữ vai trò Backend và phần việc xử lý sẽ đưa về Client Client sẽ chứa các code query trực tiếp để tương tác với Firebase Realtime Database [2]
- Cụ thể, quá trình giao tiếp giữa app với Firebase như sau:
+ Client gửi yêu cầu: khi client cần truy cập hoặc thay đổi dữ liệu, nó sẽ tạo và gửi một yêu cầu trực tiếp tới Firebase thông qua các SDK (Software Development Kits) của Firebase, sử dụng HTTP/HTTPS [3]
+ Firebase nhận yêu cầu: Firebase nhận yêu cầu từ client thông qua các API endpoints của Firebase (được cấu hình sẵn) Yêu cầu có thể là một truy vấn để lấy dữ liệu từ Firestore hoặc xác thực người dùng từ Firebase Authentication
+ Xử lý logic và xác thực: sau khi nhận yêu cầu, Firebase Authentication sẽ xác thực người dùng dựa trên token được gửi kèm theo yêu cầu, Firebase Firestore kiểm tra quyền xem người dùng có quyền thực hiện thao tác với dữ liệu không)
+ Firebase gửi phản hồi: sau khi xử lý logic và truy vấn cơ sở dữ liệu, Firebase sẽ tạo phản hồi dưới dạng JSON Phản hồi này sẽ được gửi trở lại client thông qua API endpoints
12 + Client nhận và xử lý phản hồi: Client nhận phản hồi từ Firebase qua Internet Ứng dụng (hoặc web) sẽ nhận và hiển thị dữ liệu phản hồi này cho người dùng cuối, hoặc thực hiện các thao tác tiếp theo dựa trên dữ liệu nhận được.
Cơ sở dữ liệu
2.2.1 Giới thiệu Firebase Ảnh 2.2 Firebase
Firebase là một nền tảng phát triển ứng dụng di động và web được Google mua lại và phát triển từ năm 2014 Firebase cung cấp một bộ công cụ và dịch vụ toàn diện giúp các nhà phát triển xây dựng ứng dụng nhanh chóng, mở rộng dễ dàng và duy trì hiệu quả
Firebase bao gồm các dịch vụ như cơ sở dữ liệu thời gian thực, xác thực người dùng, lưu trữ đám mây, thông báo đẩy, phân tích ứng dụng và nhiều tính năng khác [4]
2.2.2 Một số dịch vụ của Firebase [4]
- Firebase Realtime Database: Là một cơ sở dữ liệu NoSQL lưu trữ và đồng bộ hóa dữ liệu giữa các khách hàng trong thời gian thực Sử dụng mô hình cây JSON, phù hợp cho các ứng dụng đơn giản, cấu trúc dữ liệu ít phức tạp
- Firebase Authentication: Cung cấp các phương thức xác thực người dùng như email/password, Google, Facebook, Twitter, GitHub và nhiều nhà cung cấp khác Đơn giản hóa quá trình đăng nhập và bảo mật người dùng
- Firebase Cloud Firestore: Là một cơ sở dữ liệu NoSQL khác, cung cấp khả năng lưu trữ linh hoạt và mạnh mẽ, hỗ trợ các truy vấn phức tạp và thời gian thực Sử dụng mô hình tài liệu, phù hợp với các dự án có cấu trúc dữ liệu phức tạp, quan hệ đa cấp và yêu cầu khả năng mở rộng cao
Thư viện ĐH Thăng Long
13 - Firebase Cloud Storage: Cung cấp khả năng lưu trữ tệp tin trên đám mây với khả năng mở rộng không giới hạn Thích hợp cho việc lưu trữ và phục vụ các tệp tin lớn như hình ảnh, video, và tài liệu
- Firebase Analytics: Cung cấp các công cụ phân tích chi tiết về hành vi người dùng, giúp các nhà phát triển hiểu rõ hơn về cách người dùng tương tác với ứng dụng của họ
- Firebase Remote Config: Cho phép thay đổi giao diện và hành vi của ứng dụng từ xa mà không cần phải cập nhật ứng dụng Rất hữu ích cho việc thử nghiệm A/B và cá nhân hóa trải nghiệm người dùng
2.2.3 Vì sao sử dụng Firebase [4]
- Tích hợp dễ dàng: Firebase cung cấp các SDK cho nhiều nền tảng, bao gồm Android, iOS và web, giúp việc tích hợp trở nên dễ dàng và nhanh chóng
- Thời gian thực: Firebase nổi bật với khả năng đồng bộ hóa dữ liệu trong thời gian thực, làm cho các ứng dụng phản hồi nhanh và mượt mà hơn
- Bảo mật: Firebase cung cấp các công cụ bảo mật mạnh mẽ, bao gồm xác thực người dùng và quy tắc bảo mật cho cơ sở dữ liệu
- Dễ dàng mở rộng: Firebase được thiết kế để mở rộng, hỗ trợ các ứng dụng từ nhỏ đến lớn mà không gặp vấn đề về hiệu suất
- Hỗ trợ từ Google: Là một sản phẩm của Google, Firebase hưởng lợi từ cơ sở hạ tầng mạnh mẽ và các dịch vụ hỗ trợ của Google.
App Client
2.3.1 Giới thiệu Kotlin Ảnh 2.3 Kotlin
14 Kotlin là một ngôn ngữ lập trình hướng đối tượng và hàm, được phát triển bởi JetBrains vào năm 2011 và ra mắt công khai vào năm 2016 Ban đầu được thiết kế để cải thiện các hạn chế của Java và các ngôn ngữ khác trên nền tảng JVM, Kotlin nhanh chóng trở thành một trong những ngôn ngữ lập trình phổ biến nhất cho phát triển ứng dụng di động hệ điều hành android [5] [6]
2.3.2 Vì sao sử dụng Kotlin [7] [8]
- Tương thích với Java: Kotlin hoàn toàn tương thích ngược với Java, cho phép dễ dàng tích hợp các thư viện, extension từ java vào các dự án sử dụng Kotlin và ngược lại không cần thay đổi đáng kể
- Cú pháp ngắn gọn và dễ hiểu: Kotlin giảm thiểu sự phức tạp của cú pháp so với
Java, giúp giảm lỗi lập trình và tăng tốc độ phát triển Các tính năng như smart casts, extension functions, và null safety giúp việc viết mã trở nên ngắn gọn và hiệu quả hơn
- Được hỗ trợ mạnh từ Google và cộng đồng Android: Kotlin đã được Google chọn là ngôn ngữ chính thức cho phát triển ứng dụng Android từ năm 2017, điều này làm tăng sự phổ biến và sự ủng hộ từ cộng đồng phát triển Android toàn cầu
- Tính năng hiện đại: Kotlin cung cấp nhiều tính năng tiên tiến như lambdas, inline functions, properties, và mô hình coroutine để xử lý bất đồng bộ một cách hiệu quả Điều này giúp cho việc xây dựng các ứng dụng với hiệu suất cao và dễ bảo trì hơn
- Tài liệu phong phú: Kotlin được hỗ trợ bởi một cộng đồng lớn và tích cực, cùng với các tài liệu hướng dẫn chi tiết từ JetBrains và các nguồn tự học độc lập
- Lifecycle Components: Cung cấp một loạt các thành phần hỗ trợ quản lý vòng đời
(Lifecycle) của ứng dụng, giúp dễ dàng theo dõi và phản hồi vào các sự kiện vòng đời của các thành phần như Activity và Fragment [9]
- ViewModel Extension: ViewModel giúp hỗ trợ quản lý dữ liệu và trạng thái của UI một cách hiệu quả, giúp tránh mất dữ liệu khi các thành phần vòng đời được tái tạo
- Navigation Extension: cho giao diện điều hướng, cung cấp các phương thức hỗ trợ việc hiển thị và quản lý navigation drawer, bottom navigation và action bar
- Splash Screen Animation: thư viện thêm màn hình chào (splash screen) với các hiệu ứng animation mượt mà vào ứng dụng, cải thiện trải nghiệm người dùng ngay từ khi khởi động
- Loading Animation (LottieFiles): là một thư viện miễn phí cung cấp các animation loading với chất lượng cao, hỗ trợ nhiều loại định dạng như JSON, dotlottie, MP4 và GIF
Thư viện ĐH Thăng Long
15 - Glide (Image Loading): thư viện để tải và hiển thị hình ảnh từ các nguồn như
URL, disk cache hay memory cache, khả năng tùy chỉnh cao và hiệu suất tối ưu
- Chart (MPAndroidChart): là thư viện cho phép dễ dàng tạo và hiển thị các biểu đồ phức tạp trên Android, bao gồm các loại biểu đồ như dạng cột, đường, vòng tròn và nhiều tùy chọn tùy chỉnh khác
- Biometric Authentication: thư viện này cung cấp tính năng xác thực bằng sinh trắc trong ứng dụng Android, đảm bảo tính bảo mật cao và tiện lợi cho người dùng [11]
- SQLite Room Database (Room Persistence Library): là một phần thư viện trong
Android Architecture Components, nó giúp cho việc thao tác với SQLiteDatabase Object trở lên dễ dàng hơn, giảm thiểu số lượng câu truy vấn bằng những annotation sẵn có và xác minh truy vấn tại thời điểm biên dịch [12]
- Zalo Pay Integration: bao gồm thư viện HTTP client cho Android, cung cấp các công cụ để giao tiếp mạng một cách hiệu quả và bảo mật ngoài ra còn mã hóa và giải mã dữ liệu, hỗ trợ các thuật toán mã hóa thông dụng như Base64, MD5, SHA-1,
- Swipe Refresh Layout: thư viện hỗ trợ tạo tính năng refresh, cho phép người dùng cập nhật nội dung bằng cách kéo lên, cải thiện trải nghiệm người dùng trong việc tương tác với dữ liệu động [14]
Thanh toán qua ứng dụng thứ ba (ZaloPay)
2.4.1 Giới thiệu ZaloPay Ảnh 2.4 ZaloPay
ZaloPay là nền tảng thanh toán trực tuyến hay còn gọi là ví điện tử, được xây dựng chuyên biệt nhằm đáp ứng cho các nhu cầu thanh toán thường nhật và kinh doanh Ví điện
16 tử ZaloPay là ứng dụng được phát triển bởi Công ty Cổ phần Zion, tích hợp với cộng đồng hơn 100 triệu người dùng trên Zalo Hiện tại, ZaloPay đang là đối tác của Visa, Mastercard và 39 ngân hàng nội địa nhằm hỗ trợ người dùng trong việc chuyển tiền liên ngân hàng, thanh toán và nhiều tiện ích vượt trội khác.[15]
2.4.2 Vì sao sử dụng ZaloPay [13] [16]
- Đa dạng mô hình tích hợp: ZaloPay hỗ trợ tích hợp vào ứng dụng của bạn thông qua API, có thể tích hợp thanh toán bằng mã QR, ví Zalo hoặc liên kết ngân hàng
- Tài liệu hướng dẫn chi tiết: ZaloPay cung cấp tài liệu hướng dẫn rõ ràng và chi tiết cho các nhà phát triển
- Dễ dàng tích hợp vào ứng dụng: Với API đơn giản và tài liệu hướng dẫn, việc tích hợp ZaloPay vào ứng dụng trở nên dễ dàng hơn bao giờ hết
- Dễ dàng mở tài khoản: Người dùng có thể mở tài khoản ZaloPay một cách nhanh chóng và tiện lợi qua ứng dụng Zalo hoặc trực tiếp bằng ứng dụng ZaloPay
- Liên kết ngân hàng tiện lợi và nhanh chóng: ZaloPay hỗ liên kết với nhiều ngân hàng nội địa tại Việt Nam, lên đến 39 ngân hàng
Thư viện ĐH Thăng Long
CHƯƠNG 3 ĐẶC TẢ CÁC CHỨC NĂNG
Sơ đồ Use Case
Ảnh 3.1 Sơ đồ UC của người quản trị (admin)
18 Ảnh 3.2 Sơ đồ UC của người tuyển dụng
Thư viện ĐH Thăng Long
19 Ảnh 3.3 Sơ đồ UC của người tìm việc
UC Đăng ký
Bảng 3.1 Chi tiết UC Đăng ký
Mô tả Cho phép người dùng đăng ký tài khoản mới
Tác nhân Người tuyển dụng, người tìm việc Đặc tả chức năng chính
- Tác nhân truy cập vào ứng dụng, chọn vai trò và nhấn vào đăng ký - Hệ thống yêu cầu tác nhân nhập nhập các trường thông tin cơ bản để đăng ký
- Sau khi đăng ký, tác nhân được chuyển tới màn hình chính theo vai trò đã chọn
Các thông tin đăng ký không hợp lệ hoặc bị thiếu
Hiện thông báo và trỏ focus vào trường không hợp lệ, nếu nhiều trường không hợp lệ thì trỏ vào trường đầu tiên
Giao diện minh họa Ảnh 3.4 Màn hình chọn vai trò Ảnh 3.5 Màn hình đăng ký
Thư viện ĐH Thăng Long
UC Đăng nhập
Bảng 3.2 Chi tiết UC Đăng nhập
Mô tả Cho phép người dùng đăng nhập vào tài khoản
Tác nhân Người tuyển dụng, người tìm việc, quản trị viên Đặc tả chức năng chính Đăng nhập bằng mật khẩu
1 Người dùng truy cập vào ứng dụng lựa chọn vai trò và tiến hành nhập tài khoản và mật khẩu để đăng nhập
2 Hệ thống gửi dữ liệu đăng nhập lên Firebase, nếu tài khoản đã được đăng ký trả về và đăng nhập cho người dùng
3 Sau khi đăng nhập thành công, hệ thống sẽ điều hướng về trang chủ dựa theo vai trò tài khoản Đăng nhập bằng sinh trắc
1 Người dùng truy cập vào ứng dụng lựa chọn đăng nhập bằng sinh trắc
2 Hệ thống kiểm tra điều kiện:
- Tài khoản vừa thay đổi mật khẩu?
- Tài khoản đã bật phương thức đăng nhập sinh trắc trong cài đặt chưa?
- Người dùng có đang đăng nhập bằng tài khoản khác so với lần cuối đăng xuất?
3 Nếu điều kiện hợp lệ, hệ thống tiến hành lấy mật khẩu đã lưu và gửi dữ liệu lên Firebase và đăng nhập cho người dùng
4 Sau khi đăng nhập thành công, hệ thống sẽ điều hướng về trang chủ dựa theo vai trò tài khoản
Nhập thông tin đăng nhập sai hoặc không hợp lệ Hiện thông báo và trỏ focus vào trường không hợp lệ
Tài khoản không tồn tại (chưa đăng ký) hoặc đăng nhập sai vai trò
Hiển thị thông báo toast lên màn hình
Gửi thông tin đăng nhập lên Firebase lỗi Hiển thị thông báo, yêu cầu đăng nhập lại
Các điều kiện kiểm tra đăng nhập sinh trắc không hợp lệ
Hiển thị thông báo, yêu cầu đăng nhập lại bằng mật khẩu
Giao diện minh họa Ảnh 3.6 Giao diện Đăng nhập Ảnh 3.7 Giao diện Đăng nhập bằng sinh trắc học
Thư viện ĐH Thăng Long
UC Đăng xuất
Bảng 3.3 Chi tiết UC Đăng xuất
Mô tả Cho phép người dùng đăng xuất tài khoản
Tác nhân Người tuyển dụng, người tìm việc, quản trị viên Đặc tả chức năng chính Đối với Người tuyển dụng và Người tìm việc
1 Người dùng truy cập vào ứng dụng, chọn vào biểu tượng hình người ở trên thanh công cụ nằm dưới cùng của màn hình
2 Người dùng nhấp vào biểu tượng với tiêu đề “Đăng xuất”
3 Sau khi đăng xuất thành công, hệ thống sẽ điều hướng về trang chọn vai trò Đối với quản trị viên
1 Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng tiêu đề “Đăng xuất”
2 Sau khi đăng xuất thành công, hệ thống sẽ điều hướng về trang chọn vai trò
Giao diện minh họa Ảnh 3.8 Giao diện Đăng xuất của Người tìm việc và Người tuyển dụng Ảnh 3.9 Giao diện Đăng xuất của quản trị viên
UC Quên mật khẩu
Bảng 3.4 Chi tiết UC quên mật khẩu
Mô tả Cho phép người dùng reset mật khẩu khi quên mật khẩu
Tác nhân Người tuyển dụng, người tìm việc, quản trị viên Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, chọn vai trò bất kỳ và nhấn nút quên mật khẩu - Người dùng điền email dùng để đăng nhập vào và nhấn nút đặt lại mật khẩu
- Hệ thống sẽ lấy email người dùng vừa nhập và kiểm tra xem email đã được đăng ký tài khoản hay chưa? Nếu email đã được đăng ký, gửi liên kết đặt lại mật khẩu tới email
Thư viện ĐH Thăng Long
25 - Người dùng truy cập email được gửi liên kết và thực hiện đặt lại mật khẩu
Người dùng nhập email chưa đăng ký tài khoản Hiện thông báo email chưa được đăng ký
Người dùng nhập email không đúng định dạng
Hiện thông báo ở cuối trường email sai định dạng, trỏ focus vào trường nhập email
Giao diện minh họa Ảnh 3.10 Màn hình đặt lại mật khẩu Ảnh 3.11 Gửi liên kết đặt lại mật khẩu về email thành công
UC Quản lý thông tin cá nhân người dùng
Bảng 3.5 Chi tiết UC Quản lý thông tin cá nhân người dùng
Mô tả Cho phép người dùng sửa đổi thông tin cá nhân
Tác nhân Người tuyển dụng, người tìm việc Đặc tả chức năng chính
- Người dùng đăng nhập vào ứng dụng, chọn vào biểu tượng hình người ở trên thanh công cụ nằm dưới cùng (menu) của màn hình chính
- Người dùng nhấp vào biểu tượng với tiêu đề “Tài khoản”
- Hệ thống sẽ lấy dữ liệu của người dùng và hiển thị thông tin cá nhân dựa vào vai trò của người dùng
- Người dùng có thể chọn biểu tượng có hình cây bút để thực hiện sửa tài khoản
Luồng con “Sửa thông tin cá nhân” sẽ được thực hiện
- Luồng con “Sửa thông tin cá nhân”:
+ Bắt đầu khi người dùng muốn thay đổi, cập nhật thông tin cá nhân + Người dùng chọn vào biểu tượng hình cây bút để thực hiện sửa tài khoản + Hệ thống sẽ hiển thị trang sửa tài khoản cùng với thông báo
+ Người dùng sẽ chọn các trường thông tin sau đó sửa rồi chọn vào nút Lưu ở cuối trang để cập nhật
+ Hệ thống thực hiện lưu thông tin vừa cập nhật vào cơ sở dữ liệu
Các thông tin cá nhân không hợp lệ hoặc bị thiếu
Hiện thông báo ở cuối trường không hợp lệ, không cho người dùng trở lại trang trước đó
Người dùng bấm trở về khi chưa nhấn lưu các trường thông tin mới
Thông báo hủy bỏ chỉnh sửa, hiển thị lại các thông tin cũ trước đó lại vào các trường
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.12 Giao diện sửa thông tin cá nhân Ảnh 3.13 Giao diện chỉnh sửa thông tin cá nhân
UC Quản lý thông tin tài khoản
Bảng 3.6 Chi tiết UC quản lý thông tin tài khoản
Mô tả Cho phép vô hiệu hóa hoặc kích hoạt tài khoản người dùng
Tác nhân Quản trị viên (admin) Đặc tả chức năng chính
- Quản trị viên đăng nhập vào hệ thống, chọn chức năng có tiêu đề Quản lí người dùng ở giao diện màn hình chính
- Danh sách tất cả tài khoản người dùng sẽ được hiển thị bao gồm: email, tên, số điện thoại, vai trò và trạng thái tài khoản
- Chọn vào thẻ item tài khoản người dùng muốn thực hiện hoạt động, nhấn vào nút Kích hoạt/vô hiệu hóa ở dưới cùng màn hình để vô hiệu hóa hoặc kích hoạt tài khoản người dùng
28 - Hệ thống khi nhận được yêu cầu từ quản trị sẽ thay đổi trạng thái tài khoản: cho phép hoặc không cho phép người dùng đăng nhập vào ứng dụng
Giao diện minh họa Ảnh 3.14 Danh sách tài khoản của người dùng Ảnh 3.15 Chi tiết tài khoản trong danh sách người dùng
UC Đăng tải công việc
Bảng 3.7 Chi tiết UC Đăng tải công việc
Mô tả Cho phép người dùng đăng tuyển công việc mới
Tác nhân Người tuyển dụng Đặc tả chức năng chính
- Tác nhân truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Tuyển dụng”
Thư viện ĐH Thăng Long
29 - Hệ thống yêu cầu tác nhân nhập nhập đầy đủ các trường thông tin của công việc để đăng tuyển
- Sau khi điền đầy đủ các trường thông tin, tác nhân nhấn nút đăng tuyển ở cuối để hệ thống kiểm tra các thông tin, nếu tất cả thông tin đều hợp lệ thì công việc sẽ được đăng tuyển
Các thông tin đăng tải không hợp lệ hoặc bị thiếu
Hiện thông báo và trỏ focus vào trường không hợp lệ, nếu nhiều trường không hợp lệ thì trỏ vào trường đầu tiên
Số dư trong ví không đủ Hiện thông báo rằng số dư trong ví không đủ để đăng tải công việc
Giao diện minh họa Ảnh 3.16 Giao diện Đăng tải công việc Ảnh 3.17 Giao diện Đăng tải công việc
UC Xem danh sách công việc
Bảng 3.8 Chi tiết UC Xem danh sách công việc
Mô tả Cho phép người dùng xem danh sách công việc đã đăng tải
Tác nhân Người tuyển dụng Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Bài đã đăng”
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và trả về danh sách công việc đã đăng để hiển thị cho người dùng
Giao diện minh họa Ảnh 3.18 Giao diện Danh sách các công việc đã được đăng tải Ảnh 3.19 Giao diện Danh sách khi trống
Thư viện ĐH Thăng Long
UC Xem chi tiết công việc
Bảng 3.9 Chi tiết UC Xem chi tiết công việc
Mô tả Cho phép người dùng xem chi tiết công việc đã đăng tải
Tác nhân Người tuyển dụng, người tìm việc Đặc tả chức năng chính Đối với Người tuyển dụng
1 Người dùng truy cập vào trang Danh sách công việc
2 Chọn một công việc trong danh sách, hệ thống sẽ lấy thông tin công việc từ cơ sở dữ liệu và chuyển sang trang Chi tiết công việc để hiển thị thông tin Đối với Người tìm việc
1 Người dùng truy cập vào trang Tìm kiếm công việc hoặc trang Công việc ứng tuyển
2 Chọn một công việc trong danh sách, hệ thống sẽ lấy thông tin công việc từ cơ sở dữ liệu và chuyển sang trang Chi tiết công việc để hiển thị thông tin
Giao diện minh họa Ảnh 3.20 Chi tiết công việc phía người tuyển dụng Ảnh 3.21 Chi tiết công việc phía người tìm việc
UC Tìm kiếm công việc
Bảng 3.10 Chi tiết UC Tìm kiếm công việc
Mô tả Cho phép người tìm việc tìm kiếm các công việc đang tuyển dụng
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Công việc mới”
- Hệ thống sẽ lấy danh sách những công việc có trạng thái đang tuyển và hiển thị cho người dùng
- Người dùng có thể chọn vào thanh tìm kiếm để tìm kiếm công việc Lúc này luồng con “Tìm kiếm công việc” sẽ được thực hiện
Thư viện ĐH Thăng Long
33 - Người dùng có thể chọn vào biểu tượng hình bộ lọc để mở bộ lọc Lúc này luồng con “Lọc danh sách tìm kiếm” sẽ được thực hiện
- Luồng con “Tìm kiếm công việc”:
+ Bắt đầu khi người dùng muốn tìm kiếm công việc theo tên công việc hoặc tên người tuyển dụng
+ Người dùng nhấn chọn thanh tìm kiếm, lúc này bàn phím sẽ xuất hiện để người dùng có thể nhập thông tin
+ Dựa vào thông tin mà người dùng nhập, hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu, lọc dữ liệu và hiển thị cho người dùng
- Luồng con “Lọc danh sách tìm kiếm”:
+ Bắt đầu khi người dùng muốn lọc danh sách dựa trên các tiêu chi trong bộ lọc
+ Người dùng nhấn chọn vào biểu tượng hình bộ lọc, lúc này ngăn chứa bộ lọc sẽ xuất hiện
+ Người dùng chọn các tiêu chí mà mình muốn sau đó ấn nút “Áp dụng” để tiến hành lọc dữ liệu
+ Dựa vào các tiêu chí của bộ lọc mà hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu, lọc dữ liệu và hiển thị cho người dùng
+ Để đặt lại bộ về trạng thái ban đầu lọc người dùng chỉ cần ấn nút “Đặt lại”, lúc này hệ thống sẽ trả lại dữ liệu danh sách công việc chưa thông qua bộ lọc hay tìm kiếm và hiển thị cho người dùng
Giao diện minh họa Ảnh 3.22 Giao diện tìm kiếm công việc Ảnh 3.23 Giao diện bộ lọc
UC Xem thông tin người tuyển dụng
Bảng 3.11 Chi tiết UC Xem thông tin người tuyển dụng
Mô tả Cho phép người tìm việc xem thông tin của người tuyển dụng đã đăng công việc
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào Chi tiết công việc của một công việc nào đó, nhấp vào tên của người tuyển dụng hoặc ảnh đại diện của người tuyển dụng
- Hệ thống sẽ lấy thông tin về người tuyển dụng từ cơ sở dữ liệu và hiển thị
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.24 Giao diện thông tin của người tuyển dụng Ảnh 3.25 Giao diện thông tin của người tuyển dụng
UC Tham gia ứng tuyển
Bảng 3.12 Chi tiết UC Tham gia ứng tuyển
Mô tả Cho phép người tìm việc ứng tuyển các công việc đang tuyển dụng
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Công việc mới” tìm kiếm công việc muốn ứng tuyển và bấm vào để xem chi tiết công việc - Từ màn hình chi tiết công việc, ứng viên có thể xem các mô tả của công việc, thời gian làm việc, thời hạn công việc, địa chỉ, lương,
36 - Nếu thấy phù hợp, ứng viên ấn nút “Ứng tuyển” phía dưới cùng của màn hình chi tiết công việc Sau khi nhấn nút, luồng con “Xử lý ứng tuyển công việc” hoạt động
- Luồng con “Xử lí ứng tuyển công việc”:
+ Bắt đầu khi người tìm việc bấm nút ứng tuyển công việc + Hệ thống sẽ tự động gửi thông báo cho người tuyển dụng + Ứng viên sẽ được thêm vào danh sách các ứng viên ứng tuyển công việc của phía người tuyển dụng
+ Công việc được ứng viên ứng tuyển sẽ được thêm vào danh sách “Công việc đã ứng tuyển” của người ứng tuyển
Giao diện minh họa Ảnh 3.26 Giao diện chi tiết công việc phía người tìm việc (chưa ứng tuyển) Ảnh 3.27 Giao diện chi tiết công việc phía người tìm việc (đã ứng tuyển)
Thư viện ĐH Thăng Long
UC Quản lí ứng viên
Bảng 3.13 Chi tiết UC xem danh sách ứng viên
Mô tả Cho phép người tuyển dụng xem danh sách các ứng viên đã ứng tuyển công việc
Tác nhân Người tuyển dụng Đặc tả chức năng chính
- Người tuyển dụng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Việc đã đăng”, từ danh sách việc đã đăng, bấm vào công việc để xem chi tiết công việc, phía dưới cùng màn hình, bấm vào nút “Ứng viên”
- Hệ thống sẽ lấy danh sách ứng viên đã ứng tuyển từ cơ sở dữ liệu và hiển thị
- Người dùng có thể chọn ấn vào nút Phê duyệt để có thể phê duyệt ứng viên Lúc này luồng con “Phê duyệt ứng viên” sẽ được thực hiện
- Người dùng có thể chọn ấn vào nút Từ chối để có thể từ chối ứng viên Lúc này luồng con “Từ chối ứng viên” sẽ được thực hiện
- Luồng con “Phê duyệt ứng viên”:
+ Bắt đầu khi người dùng ấn nút Phê duyệt
+ Hệ thống sẽ xóa ứng viên khỏi danh sách ứng tuyển và sẽ gửi thông báo đến cho ứng viên rằng họ đã trúng tuyển
+ Thêm ứng viên vào danh sách nhân viên chính thức cho công việc
- Luồng con “Từ chối ứng viên”:
+ Bắt đầu khi người dùng ấn nút Từ chối + Hệ thống sẽ xóa ứng viên khỏi danh sách ứng tuyển
Phê duyệt khi đã tuyển đủ nhân viên
Hệ thống sẽ không thêm ứng viên vào danh sách nhân viên chính thức mà sẽ xóa hết danh sách những ứng viên còn lại và hiển thị thông báo đã tuyển đủ cho người dùng
Giao diện minh họa Ảnh 3.28 Giao diện danh sách các ứng viên ứng tuyển Ảnh 3.29 Giao diện danh sách ứng viên ứng tuyển công việc trống
UC Xem hồ sơ ứng viên
Bảng 3.14 Chi tiết UC Xem hồ sơ ứng viên
Mô tả Cho phép người tuyển dụng xem thông tin của người tìm việc khi người tìm việc ứng tuyển vào công việc
Tác nhân Người tuyển dụng
Thư viện ĐH Thăng Long
39 Đặc tả chức năng chính
- Người dùng truy cập vào Danh sách ứng viên của một công việc, chọn ứng viên
- Hệ thống sẽ lấy thông tin về ứng viên đó từ cơ sở dữ liệu và hiển thị
- Người dùng có thể chọn ấn vào nút Phê duyệt để có thể phê duyệt ứng viên Lúc này luồng con “Phê duyệt ứng viên từ trang thông tin” sẽ được thực hiện
- Người dùng có thể chọn ấn vào nút Từ chối để có thể từ chối ứng viên Lúc này luồng con “Từ chối ứng viên từ trang thông tin” sẽ được thực hiện
- Luồng con “Phê duyệt ứng viên từ trang thông tin”:
+ Bắt đầu khi người dùng ấn nút Phê duyệt
+ Hệ thống sẽ xóa ứng viên khỏi danh sách ứng tuyển và sẽ gửi thông báo đến cho ứng viên rằng họ đã trúng tuyển
+ Thêm ứng viên vào danh sách nhân viên chính thức cho công việc
+ Hệ thống sẽ trở lại trang Danh sách ứng viên
- Luồng con “Từ chối ứng viên”:
+ Bắt đầu khi người dùng ấn nút Từ chối + Hệ thống sẽ xóa ứng viên khỏi danh sách ứng tuyển + Hệ thống sẽ trở lại trang Danh sách ứng viên
Phê duyệt khi đã tuyển đủ nhân viên
Hệ thống sẽ không thêm ứng viên vào danh sách nhân viên chính thức mà sẽ xóa hết danh sách những ứng viên còn lại và hiển thị thông báo đã tuyển đủ cho người dùng Sau đó sẽ trở lại trang Danh sách ứng viên
Giao diện minh họa Ảnh 3.30 Giao diện thông tin của ứng viên Ảnh 3.31 Giao diện thông tin của ứng viên
UC Quản lí việc đã ứng tuyển
Bảng 3.15 Chi tiết UC Quản lí việc đã ứng tuyển
Mô tả Cho phép người tìm việc quản lí những công việc mà bản thân đã ứng tuyển
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Công việc ứng tuyển”
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách những công việc mà người tìm việc đã ứng tuyển
- Người dùng ấn vào công việc để xem chi tiết công việc
Thư viện ĐH Thăng Long
41 - Người dùng có thể ấn nút Hủy ứng tuyển để có thể hủy ứng tuyển công việc Lúc này luồng con “Hủy ứng tuyển” sẽ được thực hiện
- Luồng con “Hủy ứng tuyển”:
+ Bắt đầu khi người tìm việc bấm nút Hủy ứng tuyển + Hệ thống sẽ tự động xóa công việc này trong danh sách công việc đã ứng tuyển + Hệ thống sẽ trở về Danh sách công việc đã ứng tuyển
Giao diện minh họa Ảnh 3.32 Giao diện Danh sách công việc đã ứng tuyển Ảnh 3.33 Giao diện Danh sách công việc đã ứng tuyển (rỗng)
UC Quản lí thông báo
Bảng 3.16 Chi tiết UC Quản lí thông báo
Mô tả Cho phép người dùng quản lí thông báo
Tác nhân Người tìm việc, người tuyển dụng Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng hình chuông ở thanh công cụ bên dưới cùng của trang chủ
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách thông báo
- Người dùng có thể ấn vào thông báo để xem chi tiết thông báo Lúc này luồng con
“Chi tiết thông báo” sẽ được thực hiện - Người dùng ấn nút “Xóa”, luồng con “Xóa thông báo” sẽ được thực hiện
- Người dùng có thể ấn biểu tượng hình thùng rác để xóa tất cả thông báo Lúc này luồng con “Xóa tất cả thông báo” sẽ được thực hiện
- Luồng con “Chi tiết thông báo”:
+ Bắt đầu khi người tìm việc bấm vào thông báo trên danh sách
+ Hệ thống sẽ lấy dữ liệu của thông báo đó và hiện đầy đủ thông tin của thông báo cho người dùng bằng một hộp đối thoại hiển thị nổi lên trên trang thông báo
+ Khi người dùng ấn nút Đóng trên hộp đối thoại hoặc ấn ra bên ngoài hộp đối thoại thì hộp đối thoại chi tiết thông báo sẽ đóng và hiển thị trang danh sách thông báo
- Luồng con “Xóa thông báo”:
+ Bắt đầu khi người dùng ấn vào nút Xóa thông báo ở danh sách thông báo
+ Hệ thống sẽ xóa thông báo khỏi danh sách - Luồng con “Xóa tất cả thông báo”:
+ Bắt đầu khi người dùng ấn vào biểu tượng hình thùng rác ở gần tiêu đề trang
+ Hệ thống sẽ xóa hết danh sách thông báo và biểu tượng không có thông báo sẽ xuất hiện
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.34 Giao diện Thông báo Ảnh 3.35 Hộp đối thoại chi tiết thông báo Ảnh 3.36 Giao diện Thông báo (khi không có thông báo)
UC Chấm công
Bảng 3.17 Chi tiết UC Chấm công
Mô tả Cho phép người tìm việc có thể chấm công công việc
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Điểm danh”
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách những công việc mà người tìm việc trúng tuyển và đang trong trạng thái đang hoạt động
- Khi đến giờ bắt đầu ca làm việc có thể điểm danh, người dùng có thể ấn vào nút Điểm danh để có thể điểm danh thời gian đến Lúc này luồng con “Điểm danh đến” sẽ được thực hiện
- Sau khi điểm danh đến, được người tuyển dụng xác nhận đã đến và đến giờ kết thúc ca làm việc thì người dùng có thể ấn nút Kết thúc ca để có thể hoàn tất chấm công cho ngày hôm đó Lúc này luồng con “Điểm danh về” sẽ được thực hiện
- Luồng con “Điểm danh đến”:
+ Bắt đầu khi người tìm việc bấm nút Điểm danh
+ Hệ thống sẽ gửi dữ liệu điểm danh của người dùng lên cơ sở dữ liệu và để trạng thái điểm danh là chưa xác nhận
- Luồng con “Điểm danh về”:
+ Bắt đầu khi người tìm việc bấm nút Kết thúc ca
+ Hệ thống sẽ cập nhật dữ liệu chấm công của người dùng trên cơ sở dữ liệu, sau đó sẽ cập nhật lương mà người tìm việc sẽ nhận khi kết thúc công việc và cập nhật số buổi làm
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.37 Giao diện Danh sách công việc đã ứng tuyểnGiao diện Chấm công Ảnh 3.38 Giao diện Danh sách công việc đã ứng tuyển (Chưa ứng tuyển công việc) Giao diện Chấm công sau khi được xác nhận
UC Xác nhận điểm danh
Bảng 3.18 Chi tiết UC Xác nhận điểm danh
Mô tả Cho phép người tuyển dụng có thể xác nhận rằng người dùng đã đến chấm công
Tác nhân Người tuyển dụng Đặc tả chức năng chính
46 - Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với hình người đang giơ tay ở thanh công cụ để mở trang Việc đang hoạt động
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách những công việc mà đang trong trạng thái đang hoạt động
- Khi ấn vào một việc trong danh sách, hệ thống sẽ hiển thị danh sách nhân viên của công việc này
- Sau khi nhân viên điểm danh đến, bên phải của tên nhân viên sẽ xuất hiện nút Xác nhận và dưới tên của nhân viên là thời gian đến chấm công
- Người dùng có thể ấn vào nút Xác nhận để xác nhận rằng nhân viên đã đến làm việc Lúc này luồng con “Xác nhận điểm danh” sẽ được thực hiện
- Luồng con “Xác nhận điểm danh”:
+ Bắt đầu khi người tuyển dụng bấm nút Xác nhận
+ Hệ thống sẽ cập nhật trạng thái điểm danh của nhân viên là đã xác trên cơ sở dữ liệu
Thư viện ĐH Thăng Long
47 Ảnh 3.39 Giao diện Xác nhận điểm danh Ảnh 3.40 Giao diện Xác nhận điểm danh sau khi xác nhận
UC Theo dõi lương
Bảng 3.19 Chi tiết UC Theo dõi lương
Mô tả Cho phép người tìm việc có thể theo dõi lương của công việc
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng có tiêu đề “quản lý” thứ hai từ trái sang ở thanh công cụ, chọn vào trang Việc đang hoạt động
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách những công việc mà người dùng đã được thông qua
- Khi ấn vào một việc trong danh sách, hệ thống sẽ hiển thị thông tin số ngày làm, tổng ngày làm, tổng lương sẽ nhận và danh sách chấm công công việc kèm lương mỗi buổi
48 - Khi kết thúc ca làm của buổi cuối cùng, nút Kết thúc việc sẽ hiện lên Khi người dùng ấn vào nút này thì luồng con “Kết thúc công việc” sẽ được thực hiện
- Luồng con “Kết thúc công việc”:
+ Bắt đầu khi người tìm việc ấn nút Kết thúc việc + Hệ thống sẽ gửi tổng số tiền lương vào ví của người tìm việc, đồng thời thêm nhân thông tin người tìm việc sẽ được cập nhật vào danh sách nhân viên đã xác nhận kết thúc công việc
+ Hệ thống sẽ hiển thị trang Quản lí công việc
Giao diện minh họa Ảnh 3.41 Giao diện Danh sách việc đã thông qua Ảnh 3.42 Giao diện Theo dõi lương
Thư viện ĐH Thăng Long
UC Nạp tiền vào ví qua zalopay
Bảng 3.20 Chi tiết UC nạp tiền vào ví thông qua ZaloPay
Mô tả Cho phép người dùng nạp tiền vào ví trong app qua ZaloPay
Tác nhân Người tuyển dụng, người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng và mở chức năng có tiêu đề “Ví”
- Phía dưới màn hình có ô trống và tiêu đề nạp tiền vào ví thông qua ZaloPay, người dùng nhập số tiền muốn nạp vào ô trống
- Sau khi nhập số tiền, một trang mới sẽ được mở ra để xác nhận số tiền người dùng muốn nạp, click vào nút “Nạp tiền thông qua ZaloPay” để tiến hành thanh toán và nạp tiền vào tài khoản, luồng con “nạp tiền” sẽ được khởi chạy
+ Bắt đầu khi người dùng ấn nút “Nạp tiền thông qua ZaloPay”
+ Hệ thống sẽ bắt đầu tạo khởi tạo hóa đơn thanh toán với số tiền người dùng đã nhập
+ Hệ thống điều hướng mở tới ứng dụng ZaloPay để thanh toán
+ Người dùng thực hiện xác thực theo yêu cầu của ZaloPay và tiến hành thành toán
+ Sau khi thanh toán thành công, điều hướng ngược lại về ứng dụng và hiển thị thông báo nạp tiền thành công
+ Ví tiền trong ứng dụng sẽ cộng tiền sau khi nhận được kết quả thanh toán thành công từ ZaloPay gửi về
Số tiền người dùng nhập liệu để khởi tạo hóa đơn là số không hợp lệ Hiện thông báo yêu cầu nhập lại số tiền
Người dùng cài đặt ứng dụng Zalo nhưng chưa cài đặt ứng dụng ZaloPay
Chuyển hướng mở ZaloPay được tích hợp sẵn trong Zalo và tiến hành thanh toán
Người dùng cài đặt ứng dụng ZaloPay nhưng chưa cài đặt ứng dụng Zalo
Chuyển hướng mở ứng dụng ZaloPay và tiến hành thanh toán
Tài khoản ZaloPay hoặc tài khoản ngân hàng đã thêm sẵn trong ZaloPay không đủ số dư thanh toán
ZaloPay sẽ trả về kết quả thanh toán thất bại, điều hướng về màn hình “Ví” của ứng dụng và hiển thị thông báo
Hóa đơn thanh toán được tạo và điều hướng tới ZaloPay nhưng người dùng bấm trở về
Hiện thị thông báo giao dịch bị hủy và trở về giao diện “Ví”
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.43 Giao diện ví Ảnh 3.44 Giao diện xác nhận số tiền muốn nạp Ảnh 3.45 Điều hướng tới ZaloPay để tiến hành thanh toán Ảnh 3.46 Kết quả trả về từ ZaloPay và điều hướng về giao diện “Ví”
UC Rút tiền ra thẻ ngân hàng
Bảng 3.21 Chi tiết UC rút tiền ra thẻ ngân hàng
Mô tả Cho phép người dùng rút tiền từ ví ra thẻ ngân hàng
Tác nhân Người tuyển dụng, người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng và mở chức năng có tiêu đề “Ví”
- Phía 2/3 bên trên là phần hiển thị danh sách các thẻ ngân hàng đã được thêm vào ứng dụng để rút tiền, để thêm thẻ ngân hàng mới, người dùng bấm vào nút biểu tượng tròn hình chiếc ví
- Tiếp tục chọn biểu tượng có tiêu đề “Thêm thẻ”, các trường thông tin thẻ xuất hiện, người dùng lựa chọn và nhập các thông tin cần thiết
- Sau khi hoàn thiện các thông tin cần thiết, thẻ được thêm và hiển thị ở danh sách thẻ ban đầu
Các trường nhập thông tin thẻ không hợp lệ Hiển thị thông báo và tỏ focus vào các trường không hợp lệ
Nhập thông tin trùng với thẻ đã thêm vào ứng dụng trước đó Hiện thị thông báo và không cho thêm thẻ
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.47 Giao diện danh sách các thẻ ngân hàng đã được thêm Ảnh 3.48 Giao diện nhập liệu thông tin thêm thẻ ngân hàng
UC Thống kê hoạt động
Bảng 3.22 Chi tiết UC thống kê hoạt động
Cho phép người dùng xem thống kê về các hoạt động trong ứng dụng
Tác nhân Đặc tả chức năng
Thống kê tổng thu nhập và chi tiêu
Hệ thống tải dữ liệu và hiển thị tổng số thu nhập và chi tiêu của người dùng vào biểu đồ cột,
54 Người dùng truy cập vào ứng dụng và mở chức năng có tiêu đề
“Thống kê” chọn xem được dữ liệu theo tháng/năm, hiển thị 5 tuần
Thống kê thu nhập/chi tiêu theo từng loại công việc
Hệ thống tải dữ liệu và hiển thị tổng thu nhập/ chi tiêu của người dùng và nhóm lại theo loại công việc vào biểu đồ tròn
Thống kê tổng số giờ làm việc
Hệ thống tải dữ liệu và hiển thị tổng số giờ làm việc mỗi tháng biểu diễn dạng biểu đồ đường, chọn xem được dữ liệu theo năm, hiển thị 12 tháng
Thống kê tổng số việc đã đăng tải
Hệ thống tải dữ liệu và hiển thị các chỉ số về tổng số việc làm đã đăng tải biểu diễn theo biểu đồ đường, chọn xem được dữ liệu theo năm, hiển thị 12 tháng
Thống kê tổng số tài khoản mở mới
Hệ thống tải dữ liệu và hiển thị số tài khoản mở mới của người dùng theo loại vào biểu đồ cột
Lựa chọn xem được dữ liệu theo tháng/năm, hiển thị 5 tuần
Thống kê lợi nhuận ứng dụng
Hệ thống tải dữ liệu và hiển thị lợi nhuận ứng dụng biểu diễn biểu đồ đường Chọn xem được theo năm, hiển thị 12 tháng
Người dùng vừa tạo tài khoản, không có dữ liệu để vẽ biểu đồ Hiển thị các giá trị dữ liệu mặc định bằng 0
Thư viện ĐH Thăng Long
Giao diện minh họa Ảnh 3.49 Biểu đồ cột thống kê thu chi của người tìm việc Ảnh 3.50 Biểu đồ cột thống kê tài khoản mở mới Ảnh 3.51 Biểu đồ tròn thống kê thu nhập từ loại công việc Ảnh 3.52 Biểu đồ đường thống kê số giờ làm việc mỗi tháng
UC Gửi báo cáo
Bảng 3.23 Chi tiết UC Gửi báo cáo
Mô tả Cho phép người dùng có thể gửi báo cáo cho Quản trị viên
Tác nhân Người tìm việc, người tuyển dụng Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Báo cáo”
- Hệ thống sẽ hiển thị giao diện Báo cáo
- Khi ấn vào một loại báo cáo mà người dùng muốn gửi, trường ghi chú và tình trạng sẽ xuất hiện
- Sau khi chọn tình trạng và nhập ghi chú thì người dùng có thể ấn nút Gửi yêu cầu để có thể gửi báo cáo Lúc này luồng con “Gửi báo cáo” sẽ được thực hiện
- Luồng con “Gửi báo cáo”:
+ Bắt đầu khi người dùng ấn nút Gửi yêu cầu sau khi chọn loại báo cáo, chọn tình trạng và viết ghi chú báo cáo
+ Hệ thống sẽ gửi dữ liệu của báo cáo lên cơ sở dữ liệu và hiện thông báo lên trên màn hình
Giao diện minh họa Ảnh 3.53 Giao diện Báo cáo
Thư viện ĐH Thăng Long
UC Xem báo cáo
Bảng 3.24 Chi tiết UC Xem báo cáo
Mô tả Cho phép Quản trị viên có thể xem báo cáo mà người dùng đã gửi
Tác nhân Quản trị viên Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Phản hồi báo cáo”
- Hệ thống sẽ lấy dữ liệu để hiển thị danh sách báo cáo Báo cáo được chia thành 3 trang theo loại báo cáo, lần lượt là: Kỹ thuật, Phản hồi, Báo cáo
- Quản trị viên ấn vào tiêu đề nào thì hệ thống sẽ hiển thị danh sách báo cáo thuộc loại đó
- Trên mỗi báo cáo nó nút Đóng báo cáo, quản trị viên ấn nút này thì luồng con
“Đóng báo cáo” sẽ được thực hiện
- Luồng con “Đóng báo cáo”:
+ Bắt đầu khi quản trị viên ấn nút Đóng báo cáo
+ Hệ thống sẽ gửi xóa dữ liệu của báo cáo đó và gửi thông báo về cho người gửi báo cáo
Giao diện minh họa Ảnh 3.54 Giao diện Xem báo cáo Ảnh 3.55 Giao diện xem báo cáo
(khi không có báo cáo)
UC Đánh giá nhân viên
Bảng 3.25 Chi tiết UC Đánh giá nhân viên
Mô tả Cho phép Người tuyển dụng có thể đánh giá (nhân viên) người tìm việc sau khi kết thúc công việc
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng với tiêu đề “Lịch sử công việc”
- Hệ thống sẽ lấy dữ liệu để hiển thị danh sách những công việc mà có nhân viên xác nhận kết thúc để nhận lương
Thư viện ĐH Thăng Long
59 - Người dùng sẽ nhấn vào một trong các công việc để hiển thị danh sách những nhân viên đã xác nhận công việc
- Người dùng ấn vào thông tin nhân viên để đánh giá nhân viên Lúc này luồng con
“Đánh giá nhân viên” sẽ được thực hiện
- Luồng con “Đánh giá nhân viên”:
+ Bắt đầu khi người tuyển dụng ấn vào thông tin của một nhân viên
+ Hệ thống sẽ hiển thị hộp đối thoại gồm số sao để đánh giá trên thang điểm 5 và trường đánh giá để người tuyển dụng có mô tả đánh giá chi tiết về người tìm việc này
Khi người dùng không điền đánh giá Hệ thống sẽ hiển thị lỗi ở trường đánh giá và tự trỏ con trỏ vào trường này
Giao diện minh họa Ảnh 3.56 Giao diện Lịch sử công việc Ảnh 3.57 Giao diện hộp đối thoại đánh giá
UC Xem đánh giá
Bảng 3.26 Chi tiết UC Xem đánh giá
Mô tả Cho phép người tìm việc xem danh sách đánh giá của tất cả các nhà tuyển dụng từ công việc cũ của bản thân
Tác nhân Người tìm việc Đặc tả chức năng chính
- Người dùng truy cập vào ứng dụng, nhấp vào biểu tượng “quản lý công việc” vị trí thứ 2 từ trái sang ở thanh công cụ menu dưới cùng để mở trang Quản lí công việc, chọn vào trang Đánh giá
- Hệ thống sẽ lấy dữ liệu từ cơ sở dữ liệu và hiển thị danh sách những đánh giá mà người dùng đã nhận được
Giao diện minh họa Ảnh 3.58 Giao diện Xem đánh giá
Thư viện ĐH Thăng Long
CHƯƠNG 4 THIẾT KẾ CƠ SỞ DỮ LIỆU 4.1 Lược đồ cơ sở dữ liệu Ảnh 4.1 Lược đồ cơ sở dữ liệu
Chi tiết các cấu trúc JSON
Bảng 4.1 Bảng chi tiết cấu trúc JSON
STT Tên các cấu trúc Chú thích
1 amount_job_posted Lưu trữ thông tin về số lượng công việc mà người tuyển dụng đã đăng 2 app_income Lưu trữ thông tin về doanh thu của ứng dụng 3 applicant Lưu trữ thông tin của ứng viên trong công việc 4 approved_job Lưu trữ thông tin về những công việc đã được thông qua của người tìm việc
STT Tên các cấu trúc Chú thích
5 b_user Lưu trữ thông tin về người tuyển dụng
6 buser_expense_by_date Lưu trữ thông tin về chi tiêu của người tuyển dụng theo ngày
7 buser_expense_job_type_id Lưu trữ thông tin về chi tiêu của người tuyển dụng theo id loại công việc 8 check_in Lưu trữ thông tin chấm công của nhân viên
9 job Lưu trữ thông tin về công việc
10 job_history Lưu trữ thông tin về công việc đã hoàn thành và đánh giá mà người tìm việc nhận được
11 n_user Lưu trữ thông tin về người tìm việc
12 notification Lưu trữ thông tin về thông báo của người dùng
13 nuser_income_by_date Lưu trữ thông tin về doanh thu của người tìm việc theo ngày
14 nuser_income_job_type_id Lưu trữ thông tin về doanh thu của người tìm việc theo id loại công việc 15 nuser_worked_hours Lưu trữ thông tin số giờ người tìm việc đã làm 16 registered_user Lưu trữ thông tin số lượng người đăng ký mới 17 report Lưu trữ thông tin báo cáo mà người dùng gửi
18 salary Lưu trữ thông tin về lương chắc chắn sẽ nhận khi kết thúc công việc 19 user_avt Lưu trữ thông tin ảnh đại diện của người dùng 20 user_role Lưu trữ thông tin về vai trò của người dùng 21 wallet Lưu trữ thông tin về thẻ người dùng đã thêm 22 wallet_amount Lưu trữ thông tin số dư trong ví người dùng
Thư viện ĐH Thăng Long
Bảng 4.2 Bảng chi tiết “amount_job_posted”
Thuộc tính Kiểu dữ liệu Khác Giải thích date_by_month String PRIMARY KEY Tháng chi tiêu user_id String FOREIGN KEY Id của người tuyển dụng amount Double Số tiền đã chi
Bảng 4.3 Bảng chi tiết “app_income”
Thuộc tính Kiểu dữ liệu Khác Giải thích income_date String PRIMARY KEY Ngày doanh thu amount Double Doanh thu của ứng dụng
Bảng 4.4 Bảng chi tiết “applicant”
Thuộc tính Kiểu dữ liệu Khác Giải thích user_id String PRIMARY KEY,
FOREIGN KEY Id của người tìm việc job_id String PRIMARY KEY,
FOREIGN KEY Id của công việc applied_date String Ngày ứng tuyển applicant_des String Mô tả của người tìm việc dành cho công việc
Bảng 4.5 Bảng chi tiết “approved_job”
Thuộc tính Kiểu dữ liệu Khác Giải thích user_id String PRIMARY KEY,
Id của người tìm việc (nhân viên) job_id String PRIMARY KEY,
FOREIGN KEY Id của công việc approved_date String Ngày được thông qua
Bảng 4.6 Bảng chi tiết “b_user”
Thuộc tính Kiểu dữ liệu Khác Giải thích user_id String PRIMARY KEY Id của người dùng address String Địa chỉ của người tuyển dụng email String Email của người tuyển dụng buser_name String Tên của người tuyển dụng phone_num String Số điện thoại của người tuyển dụng business_sector String Mô hình kinh doanh business_type String Loại doanh nghiệp description String Mô tả về người tuyển dụng tax_code String Mã số thuế
Thư viện ĐH Thăng Long
Bảng 4.7 Bảng chi tiết “buser_expense_by_date”
Thuộc tính Kiểu dữ liệu Khác Giải thích expense_date String PRIMARY KEY Ngày chi tiêu user_id String FOREIGN KEY Id của người tuyển dụng expense_amount Double Số tiền đã chi
4.2.7 “buser_expense_job_type_id”
Bảng 4.8 Bảng chi tiết “buser_expense_job_type_id”
Thuộc tính Kiểu dữ liệu Khác Giải thích job_type_id String PRIMARY KEY Id của loại công việc user_id String FOREIGN KEY Id của người tuyển dụng expense_amount Double Số tiền đã chi
Bảng 4.9 Bảng chi tiết “check_in”
Thuộc tính Kiểu dữ liệu Khác Giải thích user_id String PRIMARY KEY,
Id của người tìm việc (nhân viên) job_id String PRIMARY KEY,
FOREIGN KEY Id của công việc check_in_date String Ngày chấm công check_in_time String Giờ điểm danh đến check_out_time String Giờ điểm danh về day_salary Double Lương đi làm của ngày
Status String Trạng thái chấm công
Bảng 4.10 Bảng chi tiết Nhánh “job”
Thuộc tính Kiểu dữ liệu Khác Giải thích job_id String PRIMARY KEY Id của công việc address String Địa chỉ của công việc
User_id String FOREIGN KEY Id của người tuyển dụng emp_amount Int Số lượng nhân viên tuyển dụng end_hr String Giờ kết thúc ca end_time String Ngày kết thúc công việc job_des String Mô tả công việc job_title String Tên công việc job_type String Loại công việc num_of_recruited Int Số lượng nhân viên đã được tuyển post_date String FOREIGN KEY Ngày đăng việc salary_per_emp Double Lương theo giờ start_hr String Giờ bắt đầu ca start_time String Ngày bắt đầu công việc status String Trạng thái công việc total_salary Double Tổng lương mà người tuyển dụng chi trả cho nhân viên
Thư viện ĐH Thăng Long
Bảng 4.11 Chi tiết “job_history”
Thuộc tính Kiểu dữ liệu Khác Giải thích job_id String PRIMARY KEY,
FOREIGN KEY Id của công việc user_id String PRIMARY KEY,
FOREIGN KEY Id của người tìm việc rating Float
Thang điểm đánh giá mà người tuyển dụng đánh giá người tìm việc review String Đánh giá của người tuyển dụng về người tìm việc end_date String Ngày người tìm việc kết thúc công việc
Bảng 4.12 Bảng chi tiết “n_user”
Thuộc tính Kiểu dữ liệu Khác Giải thích user_id String PRIMARY KEY Id của người dùng address String Địa chỉ của người tìm việc email String Email của người tìm việc nuser_name String Tên của người tìm việc phone_num String Số điện thoại của người tìm việc age Int Tuổi của người tìm việc
Gender String Giới tính của người tìm việc
Bảng 4.13 Bảng chi tiết “notification”
Thuộc tính Kiểu dữ liệu Khác Giải thích noti_id String PRIMARY KEY Id của thông báo user_id String FOREIGN KEY Id của người dùng date String Ngày thông báo detail String Nội dung thông báo
Bảng 4.14 Bảng chi tiết “nuser_income_by_date”
Thuộc tính Kiểu dữ liệu Khác Giải thích income_date String PRIMARY KEY Ngày thu nhập user_id String FOREIGN KEY Id của người tìm việc income _amount Double Doanh thu từ công việc
4.2.14 “nuser_income_job_type_id”
Bảng 4.15 Bảng chi tiết “nuser_income _job_type_id”
Thuộc tính Kiểu dữ liệu Khác Giải thích job_type_id String PRIMARY KEY Id của loại công việc user_id String FOREIGN KEY Id của người tìm việc income_amount Double Doanh thu từ công việc
Bảng 4.16 Bảng chi tiết “nuser_worked_hours”
Thuộc tính Kiểu dữ liệu Khác Giải thích date_by_month String PRIMARY KEY Tháng doanh thu user_id String FOREIGN KEY Id của người tìm việc
Thư viện ĐH Thăng Long
Thuộc tính Kiểu dữ liệu Khác Giải thích worked_time Double Doanh thu từ công việc
Bảng 4.17 Bảng chi tiết “registered_user”
Thuộc tính Kiểu dữ liệu Khác Giải thích role String PRIMARY KEY Vai trò của người dùng date String Ngày đăng ký amount Double Số lượng người đăng ký
Bảng 4.18 Bảng chi tiết “report”
TRIỂN KHAI HỆ THỐNG
Môi trường cài đặt
5.1.1 Yêu cầu cấu hình cài đặt phát triển
Bảng 5.1 Bảng yêu cầu cấu hình trên Windows
Hệ điều hành/phiên bản Microsoft® Windows® 8/10/11 64 bit
Kiến trúc CPU x86_64; Intel Core thế hệ 2 trở lên hoặc CPU AMD có hỗ trợ trình điều khiển ảo hoá của Windows
Bộ nhớ (RAM) tối thiểu 8GB RAM
Dung lượng trống trên ổ đĩa tối thiểu là 8 GB (IDE + SDK Android + Trình mô phỏng Android)
Màn hình Độ phân giải tối thiểu 1280 x 800
Kết nối mạng Đường truyền internet ổn định
Bảng 5.2 Bảng yêu cầu cấu hình trên macOS
Hệ điều hành/phiên bản MacOS® 10.14 (Mojave) trở lên
Bộ xử lý (CPU) Chip dựa trên ARM hoặc Intel Core thế hệ 2 trở lên có hỗ trợ khung trình điều khiển ảo hoá
Bộ nhớ (RAM) tối thiểu 8GB RAM
Dung lượng trống trên ổ đĩa tối thiểu là 8 GB (IDE + SDK Android + Trình mô phỏng Android)
Thư viện ĐH Thăng Long
Màn hình Độ phân giải tối thiểu 1280 x 800
Kết nối mạng Đường truyền internet ổn định
Bảng 5.3 Bảng yêu cầu cấu hình trên Linux
Hệ điều hành/phiên bản
Bất kỳ bản phân phối Linux 64 bit nào hỗ trợ Gnome, KDE hoặc Unity DE; GNU C Library (glibc) 2.31 trở lên
Kiến trúc CPU x86_64; Bộ xử lý Intel Core thế hệ 2 trở lên hoặc bộ xử lý AMD có hỗ trợ Ảo hoá AMD (AMD-V) và SSSE3
Bộ nhớ (RAM) tối thiểu 8GB RAM
Dung lượng trống trên ổ đĩa tối thiểu là 8 GB (IDE + SDK Android + Trình mô phỏng Android)
Màn hình Độ phân giải tối thiểu 1280 x 800
Kết nối mạng Đường truyền internet ổn định
5.1.2 Yêu cầu cấu hình thiết bị cài đặt ứng dụng
Bảng 5.4 Bảng yêu cầu cấu hình thiết bị
Hệ điều hành/phiên bản Tối thiểu: Android 7.0 (Nougat)
Khuyến nghị: Android 10.0 (Q) trở lên Bộ xử lý (CPU) Bộ xử lý lõi tứ (Quad-core) 1.4 GHz hoặc cao hơn
Tối thiểu: 2 GB Khuyến nghị: 4 GB hoặc cao hơn
Dung lượng bộ nhớ trong Tối thiểu: 1 GB
Khuyến nghị: 2 GB hoặc cao hơn
Tối thiểu: 720 x 1280 (HD) Khuyến nghị: 1080 x 1920 (Full HD)
Kết nối mạng Đường truyền internet ổn định
Các tính năng đặc biệt
Kết nối mạng: Hỗ trợ Wi-Fi và 4G LTE (khuyến nghị hỗ trợ 5G nếu có)
Cảm biến vân tay hoặc các phương thức sinh trắc khác (nếu có)
Cài đặt Android Studio
Android Studio là IDE chính thức được Google khuyến nghị cho việc phát triển ứng dụng Android Các bước để cài đặt Android Studio: [20]
- Truy cập trang web chính thức của Android Studio: Android Studio Download
- Tải xuống phiên bản phù hợp với hệ điều hành (Windows, macOS, hoặc Linux)
- Cài đặt theo hướng dẫn.
Cài đặt ứng dụng Zalo - ZaloPay
ZaloPay là ứng dụng thanh toán di động với nhiều tính năng độc đáo Được xây dựng chuyên biệt để thỏa mãn mọi nhu cầu thanh toán trong cuộc sống và nhu cầu kinh doanh ZaloPay hiện giờ đã được tích hợp và Zalo, vì vậy có thể lựa chọn cài đặt 1 trong 2 đều có thể tương tác được với chức năng thanh toán của ứng dụng [19]
- Truy cập trang web chính thức của ZaloPay
- Tải xuống và đăng ký tài khoản theo hướng dẫn
Thư viện ĐH Thăng Long
75 Ảnh 5.1 Hướng dẫn tải và đăng ký ZaloPay Ảnh 5.2 ZaloPay được tích hợp trong Zalo
Một số chức năng chính
- Chức năng cho phép Người tuyển dụng có thể đăng tải công việc Ảnh 5.3 Giao diện Đăng tải công việc Ảnh 5.4 Giao diện Đăng tải công việc
- Chức năng này cho phép Người tìm việc tìm kiếm công việc Ảnh 5.5 Giao diện Tìm kiếm công việc Ảnh 5.6 Giao diện bộ lọc tìm việc
Thư viện ĐH Thăng Long
77 - Ứng tuyển và hủy ứng tuyển công việc Ảnh 5.7 Màn hình Chi tiết công việc khi đã ứng tuyển Ảnh 5.8 Màn hình Chi tiết công việc khi chưa ứng tuyển
- Chức năng này cho phép Người tuyển dụng từ chối, phê duyệt ứng viên Ảnh 5.9 Giao diện Danh sách ứng viên Ảnh 5.10 Khi Danh sách ứng viên (rỗng)
78 - Xem thông tin ứng viên Ảnh 5.11 Màn hình giao diện Chi tiết ứng viên (ảnh 1) Ảnh 5.12 Màn hình giao diện Chi tiết ứng viên (ảnh 2 )
- Chức năng này cho phép Người tìm việc chấm công Ảnh 5.13 Màn hình Giao diện Điểm danh đến
Thư viện ĐH Thăng Long
79 Ảnh 5.14 Màn hình Giao diện Điểm danh về
- Chức năng này cho phép Người tuyển dụng xác nhận rằng Người tìm việc đã đến nơi làm việc Ảnh 5.15 Màn hình giao diện Xác nhận điểm danh đến
- Chức năng này thuộc về tác nhân người tìm việc (nhân viên), cho phép tác nhân theo dõi lương theo chi tiết từng ngày làm việc Ảnh 5.16 Giao diện xác nhận kết thúc công việc Ảnh 5.17 Màn hình giao diện theo dõi lương từng buổi làm việc Ảnh 5.18 Màn hình giao diện theo dõi lương (trống)
Thư viện ĐH Thăng Long
- Cho phép người dùng nạp tiền qua ZaloPay và rút tiền ra thẻ ngân hàng Ảnh 5.19 Giao diện tạo đơn nạp tiền vào ví qua ZaloPay Ảnh 5.20 Xác nhận hóa đơn và tiến hành thanh toán Ảnh 5.21 Giao diện thêm thẻ ngân hàng mới Ảnh 5.22 Giao diện danh sách các thẻ ngân hàng đã thêm
- Chức năng cho phép người tìm việc xem được các thống kê hoạt động việc làm Ảnh 5.23 Thống kê thu nhập của người tìm việc Ảnh 5.24 Thống kê tổng số giờ làm việc mỗi tháng Ảnh 5.25 Thống kê thu nhập từng nhóm công việc
Thư viện ĐH Thăng Long
83 - Cho phép người tuyển dụng xem thống kê hoạt động tuyển dụng của mình Ảnh 5.26 Thống kê chi phí của người tuyển dụng Ảnh 5.27 Thống kê số lượng công việc đã đăng tuyển Ảnh 5.28 Thống kê tổng chi phí cho từng loại công việc
84 - Đối với quản trị viên, xem được thu nhập hoa hổng và tài khoản mở mới Ảnh 5.29 Thống kê tổng số tài khoản mở mới Ảnh 5.30 Tổng thu nhập hoa hồng thu được theo năm
Thư viện ĐH Thăng Long