HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TINKHOA CÔNG NGHỆ PHẦN MỀM------BÁO CÁOĐỒ ÁN 2Lớp: SE122.N11Đề tài: XÂY DỰNG HỆ THỐNG QUẢN LÝ, PHÂN CHIA CÔNG VIỆC ĐỒ ÁNGiảng viên hướng dẫn:
GIỚI THIỆU CHUNG
Lý do chọn đề tài
Trong thời đại số hóa hiện nay, việc quản lý và phân chia công việc cho các dự án, đồ án của sinh viên trở nên ngày càng phức tạp và quan trọng Với số lượng sinh viên tham gia các khóa học và đồ án ngày càng tăng, cần có một giải pháp hiệu quả để giúp họ học tập và làm việc cùng nhau một cách có tổ chức và hiệu suất Đa phần, các sinh viên đều không có cách tổ chức làm việc cụ thể mà chủ yếu chỉ phân việc thông qua các đoạn chat, giao tiếp qua call, video call
Quy trình quản lí và phân chia công việc của sinh viên thường gặp phải nhiều thách thức và khó khăn, các đồ án không chỉ đánh giá kiến thức và kỹ năng của sinh viên mà còn đòi hỏi họ phải học cách làm việc theo nhóm, quản lí thời gian, và đảm bảo tiến độ công việc Để giải quyết vấn đề này, việc xây dựng một trang web quản lí và phân chia công việc đồ án hiệu quả và tiện lợi là rất cần thiết Trang web này cần cung cấp các công cụ tổ chức, phân công nhiệm vụ và theo dõi tiến trình công việc, đồng thời tạo điều kiện thuận lợi cho việc giao tiếp và cộng tác giữa sinh viên.
Khảo sát hiện trạng
Nhóm đã tiến hành tìm hiều qua một số ứng dụng được sử dụng trên thị trường.
- Ưu điểm: o Có phân quyền và dòng thời gian. o Cách hoạt động kéo thả giúp người dùng dễ sử dụng. o Dễ theo dõi thời gian dự án.
- Nhược điểm: o Khó theo dõi nhiều dự án cùng một lúc. o Phụ thuộc rất nhiều vào bảng Kanban, không phù hợp cho dự án lớn, phức tạp o Không phù hợp với dự án lâu dài, chia nhiều sprint.
- Ưu điểm: o Giao diện thân thiện người dùng. o Tích hợp với các công cụ thứ ba như GitHub, Zoom. o Có báo cáo trạng thái đồ án.
- Nhược điểm: o Yêu cầu trả phí, không thích hợp cho dự án 1 mình
- Ưu điểm: o Có khả năng ghi chú. o Dễ sử dụng và chỉnh sửa. o Thích hợp với các nhóm nhỏ.
- Nhược điểm: o Thiếu các tính năng quản lý dự án nâng cao như theo dỏi thời gian, sơ đồ Gantt. o Khó theo dõi nhiều dự án cùng một lúc. o Tính bảo mật thấp.
- Ưu điểm: o Cung cấp nhiều tính năng quản lý dự án như quản lý sprints, backlog, báo cáo tiến độ và quản lý yêu cầu. o Cung cấp dịch vụ quản lý code và tích hợp CI/CD, triển khai tự động.
- Nhược điểm: o Yêu cầu trả phí cho một dự án lớn.
- Ưu điểm: o Có sơ đồ Gantt. o Chat real-time.
- Nhược điểm: o Thiếu thông báo dự án. o Khó cho người mới bắt đầu.
Đối tượng nghiên cứu
Giảng viên có thể xem thông tin đồ án, bao gồm tên đồ án, mô tả đồ án,thành viên nhóm, chi tiết phân chia công việc giữa các thành viên nhóm.
Giảng viên có thể xem thông tin sinh viên, bao gồm tên, khoa, mã số sinh viên, lớp…
Giảng viên có thể theo dõi tiến độ của sinh viên qua các tài liệu mà sinh viên upload lên hệ thống, đặt deadline
Giảng viên có thể upload tài liệu tham khảo cho đồ án, giao tiếp với sinh viên trên hệ thống.
Sinh viên có thể xem thông tin đồ án của mình và của sinh viên khác, bao gồm tên đồ án, mô tả đồ án, thành viên nhóm, chi tiết phân chia công việc giữa các thành viên nhóm.
Sinh viên có thể xem thông tin giảng viên, bao gồm khoa,…
Sinh viên có thể phân chia công việc, đặt deadline giữa các thành viên trong nhóm.
Sinh viên có thể upload tài liệu như bài nộp cho deadline.
Sinh viên có thể giao tiếp với nhau và với giảng viên hướng dẫn qua hệ thống.
1.3.2 Phạm vi nghiên cứu: a Phạm vi môi trường:
Triển khai trên nền tảng website b Phạm vi chức năng:
Quản lí tài khoản sinh viên.
Tạo, chỉnh sửa và xóa thông tin các đồ án.
Thêm, sửa thông tin thành viên thực hiện đồ án và giảng viên hướng dẫn đồ án.
Theo dõi tiến độ đồ án:
Có thể tự động cập nhật tiến độ công việc trên đồ án.
Có thể theo dõi tiến độ của từng đồ án.
Quản lí tài liệu và tài liệu nghiên cứu:
Cho phép sinh viên upload tài liệu đồ án, giảng viên upload tài liệu tham khảo.
Lên kế hoạch và thời gian:
Tạo deadline và có thông báo cho deadline
Cung cấp khả năng giao tiếp giữa sinh viên và giảng viên
Xây dựng sơ đồ Gantt
KIẾN THỨC NỀN TẢNG
ASP NET Core Web Api
Hình II-1 ASP.NET Core Logo
ASP.NET Core Web API là một nền tảng phát triển dịch vụ web RESTful dựa trên ASP.NET Core Nó cho phép chúng ta xây dựng các dịch vụ web dễ dàng để truy cập và quản lý dữ liệu thông qua giao thức HTTP Các ứng dụng sử dụng Web API có thể tương tác với dữ liệu, tài nguyên và ứng dụng khác thông qua các yêu cầu HTTP.
ASP.NET Core Web API có nhiều lợi ích, bao gồm hiệu suất ưu việt, khả năng đa nền tảng (hỗ trợ Windows, Linux, và macOS), và tích hợp bảo mật mạnh mẽ Nền tảng này được tối ưu hóa để xử lý đồng thời các yêu cầu, giúp ứng dụng hoạt động nhanh chóng Điểm mạnh về tích hợp bảo mật bao gồm xác thực người dùng, quản lý quyền truy cập, và bảo vệ dữ liệu trên mạng Bên cạnh đó, khả năng đa nền tảng giúp lập trình viên triển khai ứng dụng trên nhiều môi trường một cách linh hoạt và hiệu quả.
Blazor Web Assembly
Hình II-2 Blazor Web Assembly Logo
Blazor Web Assembly là một nền tảng phát triển ứng dụng web đơn trang (SPA) dựa trên NET, cho phép xây dựng ứng dụng web tương tác chất lượng cao bằng cách sử dụng C# và NET thay vì JavaScript Nó chạy trực tiếp trong trình duyệt của người dùng và không cần máy chủ phía máy chủ trung gian Blazor Web Assembly sử dụng WebAssembly để biên dịch mã C# và NET thành mã máy tại trình duyệt, mang lại trải nghiệm ứng dụng web nhanh và mượt.
Blazor Web Assembly cung cấp sự linh hoạt cho lập trình viên, cho phép họ sử dụng ngôn ngữ và công cụ mà họ đã quen thuộc để xây dựng ứng dụng web Nó giúp giảm độ phức tạp của việc phải học một ngôn ngữ mới như JavaScript và thư viện khác.Ngoài ra, Blazor Web Assembly hỗ trợ việc chia sẻ mã logic giữa ứng dụng máy chủ và ứng dụng trình duyệt, giảm sự trùng lặp và tăng khả năng bảo trì Điểm mạnh của nền tảng này cũng bao gồm tích hợp bảo mật và khả năng xây dựng ứng dụng web đa nền tảng với khả năng hoạt động trên các hệ thống Windows, Linux và macOS.
C#
C# (C Sharp) là một ngôn ngữ lập trình đa mục đích được phát triển bởi Microsoft Nó là một phần quan trọng của nền tảng phát triển ứng dụng NET C# được thiết kế để kết hợp sự mạnh mẽ của C++ với tính đơn giản của Java, giúp lập trình viên xây dựng ứng dụng Windows, web, di động, và hệ thống với hiệu suất cao và tính bảo mật.
C# là một ngôn ngữ mạnh mẽ và đa năng, với nhiều lợi ích Nó được tích hợp chặt chẽ với nền tảng NET, cho phép lập trình viên sử dụng các thư viện và khung làm việc mạnh mẽ để phát triển ứng dụng C# cung cấp cú pháp đơn giản, kiểm tra kiểu tại biên dịch, và quản lý bộ nhớ tự động, giúp giảm nguy cơ lỗi và tăng hiệu suất phát triển Nó hỗ trợ việc xây dựng ứng dụng đa nền tảng và có sẵn trong môi trường phát triển Visual Studio, một trong những môi trường phát triển phổ biến và mạnh mẽ.
SQL Server
Hình II-4 SQL Server Logo
SQL Server là một hệ quản trị cơ sở dữ liệu (DBMS) được phát triển bởi Microsoft Nó là một phần quan trọng của hệ sinh thái dữ liệu của Microsoft và được sử dụng rộng rãi để lưu trữ và quản lý dữ liệu trong các ứng dụng doanh nghiệp, web, và ứng dụng máy chủ SQL Server hỗ trợ ngôn ngữ truy vấn SQL để tương tác với cơ sở dữ liệu và cung cấp nhiều tính năng mạnh mẽ để quản lý dữ liệu.
SQL Server có nhiều lợi ích đối với quản lý dữ liệu Nó được biết đến với tính ổn định, hiệu suất tốt, và tích hợp bảo mật mạnh mẽ, điều quan trọng khi làm việc với dữ liệu nhạy cảm SQL Server hỗ trợ nhiều phiên bản và cấu hình khác nhau, từ phiên bản miễn phí đến các phiên bản cao cấp dành cho doanh nghiệp, giúp phù hợp với nhu cầu của mọi tổ chức Hệ thống quản lý cơ sở dữ liệu này cũng cung cấp các tính năng cao cấp như khả năng tự động sao lưu, phục hồi dữ liệu, và hiệu suất tối ưu hóa để đảm bảo ứng dụng của bạn hoạt động trơn tru và hiệu quả.
XÂY DỰNG HỆ THỐNG
Mô hình MVVM
Model: Các đối tượng giúp truy xuất và thao tác trên dữ liệu thực sự Trong thư mục
Models tạo các tầng chứa dữ liệu và bất kỳ liên kết validation, logic nghiệp vụ để chắc chắn tính toàn vẹn của data.
View: là phần giao diện của ứng dụng để hiển thị dữ liệu và nhận tương tác của người dùng nó có khả năng thực hiện các hành vi và phản hồi lại người dùng thông qua tính năng binding, command
ViewModel: Là lớp trung gian giữa View và Model Nó chứa các mã lệnh thực hiện Data Binding, Command Trong mô hình MVVM, các tầng bên dưới sẽ không biết được các thông tin gì về các tầng trên của nó
Hình III-5 Mô hình MVVM
Các thành phần trong hệ thống
STT Thành phần Chi tiết
Cung cấp một giao diện cho người dùng thực hiện các thao tác nhập/xuất dữ liệu Đồng thời, trong lúc sử dụng, thông báo cho người dùng nếu có lỗi xảy ra
2 Back-end của hệ thống
Cung cấp các API để tương tác với cơ sở dữ liệu và thực hiện các chức năng logic.
Lưu trữ thông tin về các dự án, công việc, người dùng và phân công công việc
Bảng 2-1 Các thành phần trong hệ thống
Thiết kế sơ đồ lớp
Hình III-6 Sơ đồ lớp
ĐẶC TẢ USECASE
Sơ đồ usecase
Hình IV-7 Sơ đồ usecase
Danh sách actor
1 Giảng viên Giảng viên là người theo dõi, được sử dụng các chức năng theo dõi báo cáo tiến độ, các file lưu trữ, tạo lịch họp
2 Sinh viên Sinh viên là người hoạt động chính, được sử dụng toàn bộ chức năng của hệ thống
Bảng IV-1 Bảng danh sách Actor
STT Tên usecase Mô tả
1 Đăng ký tài khoản Dành cho giảng viên và sinh viên, đăng ký tài khoản cá nhân
2 Chỉnh sửa thông tin tài khoản Dành cho giảng viên và sinh viên, chỉnh sửa tài
3 Xem thông tin tài khoản Dành cho giảng viên và sinh viên, xem tài khoản cá nhân
4 Tạo đồ án Dành cho sinh viên, tạo đồ án trên hệ thống
5 Xem thông tin đồ án Dành cho giảng viên và sinh viên, xem thông tin đồ án trên hệ thống
6 Sửa thông tin đồ án Người dùng sửa thông tin đồ án
7 Xóa đồ án Người dùng xoá thông tin đồ án
8 Tạo task Dành cho sinh viên, tạo task trong một đồ án
9 Xem thông tin task Dành cho giảng viên và sinh viên, xem thông tin task
10 Sửa thông tin task Dành cho sinh viên, sửa thông tin task trong một đồ án
11 Xóa task Dành cho sinh viên, xoá task trong một đồ án
12 Phân công Dành cho sinh viên, phân công task cho thành viên nhóm trong một đồ án
13 Xóa tài liệu Dành cho sinh viên, xóa tài liệu ở một đồ án khỏi hệ thống
14 Đăng tài liệu Dành cho sinh viên, đăng tài liệu từ thiết bị lên hệ thống ở một đồ án
15 Tải tài liệu Dành cho giảng viên và sinh viên, tải tài liệu ở một đồ án từ hệ thống xuống thiết bị
16 Tạo lịch họp Dành cho giảng viên và sinh viên, tạo lịch họp ở một đồ án để đặt lịch báo cáo, họp nhóm…
17 Xem thông tin lịch họp Dành cho giảng viên và sinh viên, xem thông tin lịch họp ở một đồ án
18 Sửa thông tin lịch họp Dành cho giảng viên và sinh viên, sửa thông tin lịch họp ở một đồ án
19 Xóa thông tin lịch họp Dành cho giảng viên và sinh viên, huỷ lịch họp ở một đồ án
Bảng IV-2 Bảng danh sách usecase
Đặc tả usecase
Tên use case Đăng ký tài khoản
Mô tả Người dùng đăng ký tài khoản cá nhân để được sử dụng các chức năng của hệ thống Kích hoạt Người dùng khởi động hệ thống khi chưa đăng nhập
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Không có
Hậu điều kiện Nếu tạo tài khoản thành công, người dùng có thể dùng tài khoản đã tạo đăng nhập vào hệ thống
Luồn sự kiện chính 1 Hệ thống hiển thị màn hình đăng nhập.
2 Người dùng chọn Đăng ký.
3 Người dùng nhập thông tin tài khoản và xác thực.
4 Thông báo đăng ký thành công và chuyển đến trang chủ với tài khoản vừa đăng ký.
Luồng sự kiện phụ 3a Người dùng huỷ đăng ký, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-3 Bảng đặc tả usecase đăng ký tài khoản
4.4.2 Chỉnh sửa thông tin tài khoản
Tên use case Chỉnh sửa thông tin tài khoản
Mô tả Người dùng chỉnh sửa thông tin tài khoản cá nhân trên hệ thống Kích hoạt Người dùng chọn sửa thông tin ở màn hình thông tin tài khoản cá nhân
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin người dùng được chỉnh sửa.
Luồn sự kiện chính 1 Người dùng chọn sửa thông tin ở màn hình thông tin tài khoản cá nhân.
2 Hệ thống hiển thị màn hình thông tin tài khoản cá nhân.
3 Người dùng nhập thông tin tài khoản cần chỉnh sửa và xác thực.
4 Thông báo chỉnh sửa thông tin thành công.
Luồng sự kiện phụ 3a Người dùng huỷ chỉnh sửa, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-4 Bảng đặc tả usecase chỉnh sửa thông tin tài khoản
4.4.3 Xem thông tin tài khoản
Tên use case Xem thông tin tài khoản
Mô tả Người dùng Xem thông tin tài khoản cá nhân trên hệ thống. Kích hoạt Người dùng chọn xem thông tin tài khoản ở màn hình trang chủ.
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin người dùng được hiển thị ở màn hình thông tin tài khoản.
Luồn sự kiện chính 1 Người dùng chọn xem thông tin tài khoản ở màn hình trang chủ.
2 Hệ thống hiển thị màn hình thông tin tài khoản cá nhân.
Luồng sự kiện ngoại lệ Không có
Bảng IV-5 Bảng đặc tả usecase xem thông tin tài khoản
Tên use case Tạo đồ án
Mô tả Người dùng tạo đồ án mới.
Kích hoạt Người dùng chọn Create project ở màn hình trang chủ.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Đồ án được tạo cho người dùng với thông tin như người dùng đã chọn.
Luồn sự kiện chính 1 Người dùng chọn Create project ở màn hình trang chủ.
2 Hệ thống hiển thị màn hình tạo đồ án.
3 Người dùng nhập thông tin đồ án và xác nhận.
4 Đồ án được tạo cho người dùng với thông tin như người dùng đã chọn Hệ thống chuyển đến màn hình đồ án Luồng sự kiện phụ 3a Người dùng huỷ tạo đồ án, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-6 Bảng đặc tả usecase tạo đồ án
4.4.5 Xem thông tin đồ án
Tên use case Xem thông tin đồ án
Mô tả Người dùng xem thông tin chi tiết đồ án.
Kích hoạt Người dùng chọn đồ án cần xem ở màn hình trang chủ.
Actor Giảng viên, Sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin đồ án được hiển thị ở màn hình đồ án.
Luồn sự kiện chính 1 Người dùng chọn đồ án cần xem ở màn hình trang chủ.
2 Hệ thống hiển thị màn hình đồ án.
Luồng sự kiện phụ Không có
Luồng sự kiện ngoại lệ Không có
Bảng IV-7 Bảng đặc tả usecase xem thông tin đồ án
4.4.6 Sửa thông tin đồ án
Tên use case Sửa thông tin đồ án
Mô tả Người dùng sửa thông tin đồ án.
Kích hoạt Người dùng chọn Edit ở màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin đồ án được sửa theo yêu cầu người dùng
Luồn sự kiện chính 1 Người dùng chọn Edit ở màn hình đồ án.
2 Hệ thống hiển thị màn hình sửa đồ án.
3 Người dùng nhập các thông tin cần chỉnh sửa và xác nhận.
4 Thông tin đồ án được sửa theo yêu cầu người dùng Hệ thống quay về màn hình đồ án.
Luồng sự kiện phụ 3a Người dùng huỷ sửa đồ án, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-8 Bảng đặc tả usecase sửa thông tin đồ án
Tên use case Xoá đồ án
Mô tả Người dùng xoá đồ án khỏi hệ thống
Kích hoạt Người dùng chọn Delete Project ở màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Đồ án được xoá khỏi hệ thống
Luồng sự kiện chính 1 Người dùng chọn Delete Project ở màn hình đồ án.
2 Hệ thống hiển thị thông báo xác nhận xoá đồ án.
4 Đồ án được xoá khỏi hệ thống Hệ thống quay về màn hình trang chủ.
Luồng sự kiện phụ 3a Người dùng huỷ xoá đồ án, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-9 Bảng đặc tả usecase xóa đồ án
Tên use case Tạo task
Mô tả Người dùng tạo task mới trong một đồ án
Kích hoạt Người dùng chọn Create Task trong tab List ở màn hình đồ án.
Usecase liên quan Không có
Hậu điều kiện Task mới được tạo và hiển thị trên danh sách các task ở tab
Luồng sự kiện chính 1 Người dùng vào đồ án, vào tab List.
2 Người dùng chọn Create Task.
3 Hệ thống hiển thị modal tạo task.
4 Người dùng nhập thông tin task và xác nhận.
5 Task mới được tạo ở danh sách các task.
Luồng sự kiện phụ 3a Người dùng huỷ tạo task, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-10 Bảng đặc tả usecase tạo task
Tên use case Xem thông tin task
Mô tả Người dùng xem thông tin task trong một đồ án
Kích hoạt Người dùng chọn vào một task ở tab List ở màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin task hiện ra ở màn hình thông tin task
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab List.
2 Người dùng chọn Create Task.
3 Hệ thống hiển thị modal tạo task.
4 Người dùng nhập thông tin task và xác nhận.
5 Task mới được tạo ở danh sách các task.
Luồng sự kiện phụ 4a Người dùng huỷ tạo task, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-11 Bảng đặc tả usecase xem thông tin task
Tên use case Sửa thông tin task
Mô tả Người dùng sửa thông tin task trong một đồ án
Kích hoạt Người dùng chọn Edit ở màn hình thông tin task.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin task được cập nhật theo yêu cầu người dùng.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab List.
2 Người dùng chọn một task.
3 Hệ thống hiển thị màn hình thông tin task.
4 Người dùng chọn Edit, nhập thông tin cần sửa và xác nhận.
5 Thông tin task được cập nhật.
Luồng sự kiện phụ 4a Người dùng huỷ sửa task, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-12 Bảng đặc tả usecase sửa thông tin task
Tên use case Xoá task
Mô tả Người dùng xoá task khỏi một đồ án
Kích hoạt Người dùng chọn Delete ở màn hình thông tin task.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Task được xoá khỏi đồ án
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab List
2 Người dùng chọn một task.
3 Hệ thống hiển thị màn hình thông tin task.
4 Người dùng chọn Delete và xác nhận.
5 Task được xoá khỏi đồ án, hệ thống quay về màn hình đồ án. Luồng sự kiện phụ 4a Người dùng huỷ xoá task, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-13 Bảng đặc tả usecase xóa task
Tên use case Phân công
Mô tả Người dùng phân công task cho một thành viên trong đồ án. Kích hoạt Người dùng chọn Assign ở một task trong tab List ở màn hình đồ án
Usecase liên quan Không có
Tiền điều kiện 1 Người dùng đã đăng nhập vào hệ thống.
2 Người dùng là chủ đồ án.
Hậu điều kiện Task được phân công cho người dùng đã chọn.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab List.
2 Người dùng chọn một task và chọn Assign.
3 Hệ thống hiển thị danh sách các thành viên trong nhóm.
4 Người dùng chọn một hoặc nhiều thành viên và xác nhận.
5 Thông tin phân công trên task được cập nhật.
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-14 Bảng đặc tả usecase phân công
Tên use case Xoá tài liệu
Mô tả Người dùng xoá tài liệu đồ án.
Kích hoạt Người dùng chọn Delete ở một tài liệu trong tab Files trong màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Tài liệu được xoá khỏi hệ thống.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Files.
2 Người dùng chọn một tài liệu, chọn Delete và xác nhận.
3 Hệ thống xoá tài liệu khỏi đồ án.
Luồng sự kiện phụ 2a Người dùng huỷ xoá tài liệu, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-15 Bảng đặc tả usecase xóa tài liệu
Tên use case Đăng tài liệu
Mô tả Người dùng đăng tài liệu đồ án từ thiết bị lên hệ thống.
Kích hoạt Người dùng chọn Post ở tab Files trong màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Tài liệu được lưu vào hệ thống và anh sách các tài liệu trong màn hình đồ án được cập nhật.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Files
3 Hệ thống hiển thị cửa sổ chọn file.
4 Người dùng chọn file và chọn Open.
5 Hệ thống lưu file và cập nhật danh sách tài liệu.
Luồng sự kiện phụ 4a Người dùng huỷ đăng tài liệu, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-16 Bảng đặc tả usecase đăng tài liệu
Tên use case Tải tài liệu
Mô tả Người dùng tải tài liệu đồ án từ hệ thống xuống thiết bị.
Kích hoạt Người dùng chọn Download ở một tài liệu ở tab Files trong màn hình đồ án.
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Tài liệu được tải về thiết bị của người dùng.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Files.
3 Hệ thống hiển thị cửa sổ chọn file.
4 Người dùng chọn file và chọn Open.
5 Hệ thống lưu file và cập nhật danh sách tài liệu.
Luồng sự kiện phụ 4a Người dùng huỷ đăng tài liệu, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-17 Bảng đặc tả usecase tải tài liệu
Tên use case Tạo lịch họp
Mô tả Người dùng tạo lịch họp ở một đồ án để đặt lịch báo cáo, họp nhóm…
Kích hoạt Người dùng chọn một ngày trên lịch trong tab Calendar ở màn hình đồ án và chọn Create Meeting.
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Task được phân công cho người dùng đã chọn.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Calendar.
2 Người dùng chọn một ngày trên lịch và chọn Create Meeting.
3 Người dùng nhập thông tin cuộc họp và xác nhận.
4 Hệ thống lưu thông tin cuộc họp và cập nhật lịch.
Luồng sự kiện phụ 3a Người dùng huỷ tạo cuộc họp, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-18 Bảng đặc tả usecase tạo lịch họp
4.4.17.Xem thông tin lịch họp
Mô tả Người dùng xem thông tin lịch họp.
Kích hoạt Người dùng chọn một cuộc họp trên lịch trong tab Calendar ở màn hình đồ án.
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Task được phân công cho người dùng đã chọn.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Calendar.
2 Người dùng chọn một cuộc họp trên lịch.
4 Hệ thống hiển thị thông tin tin cuộc họp.
Luồng sự kiện phụ Không có
Luồng sự kiện ngoại lệ Không có
Bảng IV-19 Bảng đặc tả usecase xem thông tin lịch họp
4.4.18.Sửa thông tin lịch họp
Tên use case Sửa thông tin lịch họp
Mô tả Người dùng sửa thông tin lịch họp.
Kích hoạt Người dùng chọn Edit ở một cuộc họp trên lịch trong tab
Calendar ở màn hình đồ án.
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Thông tin cuộc họp được cập nhật theo yêu cầu người dùng. Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Calendar.
2 Người dùng chọn một cuộc họp trên lịch và chọn Edit.
3 Người dùng nhập thông tin cần sửa và xác nhận.
4 Hệ thống cập nhật thông tin cuộc họp và cập nhật lịch.
Luồng sự kiện phụ 3a Người dùng huỷ sửa cuộc họp, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-20 Bảng đặc tả usecase sửa thông tin lịch họp
4.4.19.Xoá thông tin lịch họp
Tên use case Xoá thông tin lịch họp
Mô tả Người dùng xoá thông tin lịch họp.
Kích hoạt Người dùng chọn Delete ở một cuộc họp trên lịch trong tab
Calendar ở màn hình đồ án.
Actor Giảng viên, sinh viên
Usecase liên quan Không có
Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.
Hậu điều kiện Cuộc họp được xoá khỏi lịch trong tab Calendar ở màn hình đồ án.
Luồng sự kiện chính 1 Người dùng vào một đồ án, vào tab Calendar.
2 Người dùng chọn một cuộc họp trên lịch và chọn Delete.
4 Hệ thống xoá thông tin cuộc họp khỏi lịch.
Luồng sự kiện phụ 3a Người dùng huỷ xoá cuộc họp, use case dừng lại
Luồng sự kiện ngoại lệ Người dùng thoát khỏi hệ thống, use case dừng lại.
Bảng IV-21 Bảng đặc tả usecase xóa thông tin lịch họp
THIẾT KẾ CƠ SỞ DỮ LIỆU
Sơ đồ logic
Danh sách các quan hệ
Tên quan hệ Mô tả
Bảng AspNetUsers Thông tin tài khoản
Bảng AspNetRoles Thông tin role trong ứng dụng
Bảng AspNetUserRoles Thông tin role của người dùng
Bảng Chats Thông tin chat
Bảng Notifications Dữ liệu thông báo cho người dùng
Bảng Projects Thông tin đồ án
Bảng ApplicationUserProjects Thông tin thành viên trong đồ án
Bảng Meeting Thông tin cuộc họp
Bảng Documents Thông tin tài liệu
Bảng Sections Thông tin section
Bảng Tasks Thông tin task
Bảng ApplicationUserTasks Thông tin phân công task
Bảng V-22 Bảng danh sách các quan hệ
THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG
Màn hình đăng nhập
Hình VI-9 Màn hình hiển thị thông tin đăng nhập
Màn hình Đăng ký
Hình VI-10 Màn hình hiển thị thông tin đăng ký
Thanh NavBar
Thanh NavBar chứa các mục để người dùng chuyển tới trang mình muốn
Màn hình Mytask
Hình VI-13 Màn hình hiển thị các công việc người dùng hiện tại đã được giao dưới dạng danh sách
Hình VI-14 Màn hình hiển thị các công việc người dùng hiện tại đã được giao dưới dạng bảng
Màn hình Project
Hình VI-15 Màn hình thông tin cơ bản của project
Hình VI-16 Màn hình chứa các công việc của project dưới dạng danh sách
Hình VI-17 Màn hình chứa các công việc của project dưới dạng bảng kanban
Hình VI-18 Màn hình chứa công việc được chia theo dạng thời gian trong ngày
Hình VI-19 Màn hình chứa các công việc theo deadline
Hình VI-20 Màn hình báo cáo về các công việc
Màn hình Team
Hình VI-21 Màn hình thông tin nhóm của người dùng đã tham gia
CÀI ĐẶT VÀ KIỂM THỬ
Môi trường cài đặt và kiểm thử
- Môi trường cài đặt: Windows
- Thiết bị cài đặt: Máy tính cá nhân có các trình duyệt như Microsoft Edge,Chrome, Cốc Cốc,…
Kết quả kiểm thử
STT Tính năng Mức độ hoàn thiện
2 Tạo, xem, sửa, xoá đồ án 100%
3 Tạo, xem, sửa, xoá section 100%
4 Tạo, xem, sửa, xoá task 100%
5 Tạo, xem, sửa, xoá cuộc họp 100%
6 Đăng, tải, xoá tài liệu 100%
7 Xem, xoá, sửa thông tin tài khoản 100%
Bảng VII-23 Bảng kết quả quá trình kiểm thử
TỔNG KẾT
Kết quả đạt được
- Hoàn thành tất cả các tính năng theo kế hoạch dự kiến đưa ra ban đầu
- Hiểu thêm về cách hoạt động của NET 7 và Blazor
- Biết cách quản lý mã nguồn và làm việc thông qua Github.
- Cải thiện kỹ năng lập trình, biết cách kiểm tra lỗi và tự sửa lỗi.
- Cải thiện kỹ năng làm việc nhóm và giao tiếp ứng xử.
- Các tính năng chưa tối ưu tốt.
- Giao diện người dùng cần nhiều cải thiện.
- Ứng dụng còn đang chạy trên cơ sở sữ liệu local.
- Vấn đề bảo mật, an ninh người dùng chưa được giải quyết.