Ứng dụng mô hình cố vấn tích hợp công nghệ hỗ trợ sinh viên ngành công nghệ thông tin

MỤC LỤC

Lý thuyết về phương pháp cố vấn

Cố vấn 1-1: Phương pháp này bao gồm một người cố vấn làm việc chặt chẽ với từng người được cố vấn, hỗ trợ và cung cấp các hướng dẫn, lời khuyên được cá nhân hóa phù hợp với nhu cầu và mục tiêu của người được cố vấn. Thụng qua phương phỏp này, người cố vấn cú thể hiểu rừ hơn về cỏc xu hướng và công nghệ mới nổi trội, trong khi người được cố vấn được hưởng lợi từ sự kiến thức và kinh nghiệm của người cố vấn.

ReactJS

Cố vấn ảo: Bằng việc sử dụng công nghệ, người cố vấn và người được cố vấn có thể tham gia vào các mối quan hệ cố vấn bất kể các vấn đề liên quan đến vị trí địa lý. • Khả năng tái sử dụng cao: ReactJS sử dụng mô hình component- based, cho phép các nhà phát triển tạo các thành phần UI có thể tái sử dụng trong nhiều ứng dụng khác nhau.

Typescript

• Tích hợp với các công cụ phát triển: TypeScript có thể tích hợp dễ dàng với các công cụ phát triển như Visual Studio Code, Sublime Text, và các trình biên dịch khác để cung cấp trải nghiệm phát triển tốt hơn. • Kiểm tra kiểu tại thời điểm biên dịch: TypeScript thực hiện kiểm tra kiểu tại thời điểm biên dịch, giúp phát hiện lỗi trước khi chạy chương trình, giảm số lượng lỗi xảy ra tại thời điểm chạy.

Hình 2.3: React Query
Hình 2.3: React Query

Zustand

• Giảm boilerplate code: Thư viện này giảm bớt số lượng boilerplate code cần thiết để xử lý các tác vụ phổ biến như lấy dữ liệu từ API, caching, và tự động làm mới dữ liệu. • Xử lý side effects dễ dàng: React Query cung cấp các hooks như useMutation để xử lý các tác vụ phụ (side effects) như tạo mới, cập nhật, xóa dữ liệu một cách dễ dàng và có tổ chức.

NestJs

• Kích thước nhỏ: Zustand có kích thước nhỏ và tập trung vào việc cung cấp một API dễ sử dụng mà không làm tăng kích thước của ứng dụng nhiều. • Decorator-based syntax: NestJS sử dụng cú pháp dựa trên decorator để đánh dấu các thành phần như controllers, modules, routes, và middleware.

TypeORM

• Kiểu dữ liệu tĩnh với TypeScript: TypeORM được thiết kế để hoạt động tốt với TypeScript, cho phép sử dụng kiểu dữ liệu tĩnh trong quá trình phỏt triển để giảm lỗi và tăng tớnh rừ ràng của mó nguồn. Video Call SDK và Chat SDK của ZegoCloud là hai sản phẩm chính của công ty, được sử dụng bởi hàng triệu nhà phát triển trên toàn thế giới để xây dựng các ứng dụng giao tiếp trực tiếp.

Hình 2.6: video call và chat sdk
Hình 2.6: video call và chat sdk

Kiến trúc

Sơ đồ Usecase

1 Người dùng vãng lai Người dùng chưa đăng nhập vào hệ thống nhưng vẫn có thể sử dụng một số tính năng cơ bản của web. 4 Quản trị viên (admin) Người thực hiện quản lý hệ thống, bao gồm: quản lý các loại tài khoản, kỹ năng, lĩnh vực và giao dịch Bảng 3.1: Danh sách tác nhân.

Hình 3.3: Sơ đồ usecase mentee
Hình 3.3: Sơ đồ usecase mentee

Mô tả usecase

    4 Quản trị viên (admin) Người thực hiện quản lý hệ thống, bao gồm: quản lý các loại tài khoản, kỹ năng, lĩnh vực và giao dịch Bảng 3.1: Danh sách tác nhân. Dòng sự kiện lỗi Thông tin đăng ký không hợp lệ, hoặc email đã được đăng ký thông báo lỗi cho người dùng. Tên usecase Đăng nhập. Mô tả Cho phép người dùng đăng nhập vào hệ thống. Tác nhân Mentee. Điều kiện Phải có kết nối mạng Dòng sự kiện chính 1. Chọn nút “Đăng nhập”. Chọn tài khoản đăng nhập là mentee 3. Nhập thông tin email và mật khẩu 4. Chọn nút “Đăng nhập”. Dòng sự kiện phụ Chọn nút “Bạn chưa có tài khoản? Đăng ký” ở màn hình đăng ký tài khoản sẽ hiển thị màn hình đăng ký. Dòng sự kiện lỗi Nếu thông tin nhập vào không hợp lệ thì sẽ hiển thị thông báo lỗi và yêu cầu người dùng nhập lại. Tên usecase Đăng xuất. Mô tả Đăng xuất khỏi hệ thống. Tác nhân Mentee, mentor, admin Điều kiện Phải có kết nối mạng. Đã đăng nhập vào hệ thống. Điều kiện kết quả Người dùng thoát khỏi ứng dụng và có thể thực hiện việc đăng nhập lạ. Dòng sự kiện chính 1. Chọn vào biểu tượng avatar trên thanh header 2. Hiển thị danh mục cá nhân. Chọn vào nút “Đăng xuất”. Hiển thị màn hình trang chủ khi chưa đăng nhập Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Không có. Đăng ký làm mentor. Tên usecase Đăng ký làm mentor. Mô tả Người dùng đã có tài khoản muốn đăng ký làm mentor. Tác nhân Mentee. Điều kiện Phải có kết nối mạng Đã đăng nhập vào hệ thống. Điều kiện kết quả Tạo một đơn đăng ký làm mentor, chờ admin duyệt Dòng sự kiện chính 1. Click vào nút đăng ký làm mentor ở trang chủ hoặc. Hiển thị popup form đăng ký 3.Điền thông tin. Click vào nút đnawg ký Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Hiển thị lỗi khi người dùng nhập thông tin không hợp lệ hoặc chưa cập nhật profile theo điều kiện tối thiểu Bảng 3.5: Mô tả usecase đăng ký làm mentor. Tìm kiếm mentor. Tên usecase Tìm kiếm mentor. Mô tả Cho phép người dùng tìm kiếm mentor một cách dễ dàng và thuận lợi, hoạt động như một công cụ giúp lọc và hiển thị những mentor tương ứng với từ khóa và bộ lọc. Tác nhân Mentee, mentor, người dùng vãng lai Điều kiện Phải có kết nối mạng. Điều kiện kết quả Hiển thị các mentor phù hợp với thông tin tìm kiếm Dòng sự kiện chính 1.Nhập thông tin, chọn bộ lọc ở thanh tìm kiếm trong. Bấm nút tìm kiếm. Hiển thị danh sách mentor Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Không có. Xem hồ sơ mentor. Tên usecase Xem hồ sơ mentor. Mô tả Cho phép người dùng xem thông tin chi tiết của 1 mentor Tác nhân Mentee, mentor, người dùng vãng lai. Điều kiện Phải có kết nối mạng. Điều kiện kết quả Hiển thị đầy đủ thông tin mentor trên màn hình hồ sơ Dòng sự kiện chính 1. Chọn nút “Xem chi tiết” trên bất kỳ màn hình nào có. các item hiển thị thông tin về mentor đó. Hiển thị trang thông tin chi tiết của mentor. Dòng sự kiện phụ Không có Dòng sự kiện lỗi Không có. Xem chi tiết chương trình cố vấn. Tên usecase Xem chi tiết chương trình cố vấn. Mô tả Cho phép người dùng xem thông tin chi tiết của một chương trình do mentor tạo ra. Tác nhân Mentee, mentor, người dùng vãng lai Điều kiện Phải có kết nối mạng. Điều kiện kết quả Hiển thị đầy đủ thông tin chi tiết của chương trình cố vấn. Dòng sự kiện chính 1. Chọn vào nút “Xem ngay” của chương trình mentor được hiển thị trên màn hình hồ sơ Mentor. Hiển thị trang thông tin chi tiết của chương trình mentor. Dòng sự kiện phụ Không có Dòng sự kiện lỗi Không có. Bảng 3.8: mô tả usecase xem chương trình cố vấn. Đăng ký phiên cố vấn với mentor. Tên usecase Đăng ký phiên cố vấn. Mô tả Cho phép mentee gửi yêu cầu để đặt lịch cho một phiên cố vấn với Mentor. Tác nhân Mentee, mentor. Điều kiện Phải có kết nối mạng Đăng nhập vào hệ thống. Đang ở trang xem chi tiết phiên cố vấn hoặc ở trang hồ sơ mentor. Điều kiện kết quả Hiển thị phiên cố vấn chờ duyệt. Dòng sự kiện chính 1. Nhấn nút đăng ký ở trên trang cố vấn 3. Điền thông tin. Nhấn nút đăng ký Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Nếu thông tin nhập vào không đúng yêu cầu thì sẽ hiển thị thông báo lỗi và yêu cầu người dùng nhập lại. Hủy đăng ký phiên cố vấn với mentor. Tên usecase Hủy đăng ký phiên cố vấn. Mô tả Cho phép mentee, mentor hủy đặt lịch một phiên. Tác nhân Mentee, mentor. Điều kiện Phải có kết nối mạng. Đăng nhập thành công vào hệ thống Mentee đã đăng ký chương trình cố vấn. Điều kiện kết quả Hiển thị thông báo hủy lịch thành công và trạng thái của phiên cố vấn chuyển thành “Đã hủy”. Dòng sự kiện chính 1. Vào trang xem chi tiết phiên cố vấn. Nhấn nút hủy lịch Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Không có. Xác nhận hoàn thành phiên cố vấn. Tên usecase Xác nhận hoàn thành phiên cố vấn. Mô tả Cho phép mentee xác nhận phiên cố vấn đã hoàn thành. Tác nhân mentee. Điều kiện Phải có kết nối mạng. Đăng nhập thành công vào hệ thống. Người dùng đã được mentor chấp nhận phiên cố vấn và quá trình mentoring đã diễn ra trên thực tế và hoàn thành Điều kiện kết quả Hiển thị thông báo xác nhận thành công và trạng thái. phiên cố vấn trở thành hoàn thành Dòng sự kiện chính 1. Vào trang dashboard. Chọn vào nút “Phiên cố vấn”. Chọn vào nút “Hoàn thành” ở phiên cố vấn đã hoàn thành xong. Hiển thị thông báo xác nhận hoàn thành 5. Chọn vào nút “Đồng ý”. Hiển thị thông báo phiên cố vấn đã hoàn thành xong Dòng sự kiện phụ Chọn vào nút “Hủy” để từ chối xác nhận hoàn thành. phiên cố vấn Dòng sự kiện lỗi Không có. Đánh giá phiên cố vấn. Tên usecase Đánh giá phiên cố vấn. Mô tả Cho phép mentee thực hiện đánh giá phiên cố vấn đã hoàn thành. Tác nhân mentee. Điều kiện Phải có kết nối mạng. Đăng nhập thành công vào hệ thống. Mentee đã chọn hoàn thành phiên cố vấn tương ứng Điều kiện kết quả Thực hiện đánh giá mentor thành công. Dòng sự kiện chính 1. Chọn nút “Phiên cố vấn”. Chọn nút “Đánh giá” tại các phiên cố vấn đã hoàn thành. Chọn số sao đánh giá. Nhập bình luận đánh giá. Chọn nút “Đánh giá”. Hệ thống hiển thị kết quả đánh giá thành công và thay đổi trạng thái của phiên cố vấn. Dòng sự kiện phụ Không có Dòng sự kiện lỗi Không có. Nạp xu qua ngân hàng. Tên usecase Nạp xu qua ngân hàng. Mô tả Cho phép mentee thực hiện nạp xu vào hệ thống thông qua ngân hàng. Tác nhân Mentee, mentor. Điều kiện Phải có kết nối mạng. Đăng nhập thành công vào hệ thống Điều kiện kết quả Số dư xu tăng lên đúng số xu đã nạp Dòng sự kiện chính 1. Chọn vào biểu tượng hiển thị số dư xu. Chọn vào nút “Nạp token”. Chọn hình thức nạp tiền qua ngân hàng hoặc ví điện tử 4. Nhập thông tin số xu cần nạp, ghi chú. Chọn nút “Thanh toán” để gửi yêu cầu thanh toán đến hệ thống. Hiển thị các thông tin thanh toán để người dùng thực hiện thanh toán. Số dư xu cộng thêm số xu tương ứng Dòng sự kiện phụ Không có. Dòng sự kiện lỗi Không có. Duyệt phiên cố vấn của mentee. Tên usecase Duyệt phiên cố vấn của mentee. Mô tả Cho phép mentor xem xét và kiểm duyệt các phiên cố vấn của mentee. Tác nhân Mentor. Điều kiện Phải có kết nối mạng. Đã đăng nhập thành công vào hệ thống. Mentee đã gửi yêu cầu tham gia phiên cố vấn do mentor này tổ chức. Điều kiện kết quả Hiển thị thông báo kiểm duyệt thành công và trạng thái phiên cố vấn chuyển thành “Đã xác nhận”. Dòng sự kiện chính 1. Vào trang dashboard. Chọn vào tab “Phiên cố vấn”. Hiển thị danh sách các phiên cố vấn 4. Click nút duyệt. Hệ thống gửi thông báo chấp nhận và thay đổi trạng thái giao dịch sang thành công. Dòng sự kiện phụ Hệ thống gửi thông báo cho mentee Dòng sự kiện lỗi Không có. Tạo nội dung cố vấn. Tên usecase Tạo nội dung cố vấn. Mô tả Cho phép mentor cung cấp nội dung cố vấn, bao gồm:. tiêu đề, mô tả chi tiết, thời gian bắt đầu, link meeting). Đã đăng nhập thành công vào hệ thống Điều kiện kết quả Hiển thị danh sách các nội dung sẽ cố vấn Dòng sự kiện chính 1.

    Bảng 3.2: Mô tả usecase đăng ký tài khoản
    Bảng 3.2: Mô tả usecase đăng ký tài khoản