Tải bản đầy đủ (.pdf) (55 trang)

báo cáo bài tập lớn kỹ thuật phần mềm ứng dụng đề tài trang web quản lý lab

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.81 MB, 55 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<i><b>ĐỀ TÀI: TRANG WEB QUẢN LÝ LAB </b></i>

<b>Giảng viên hướng dẫn: PGS.TS. VŨ HẢI </b>

<b>Nhóm: 17 </b>

Thành viên:

Phạm Văn An – 20213790 Phạm Viết Chuyên – 20210125

Lê Minh Long – 20213986 Lã Hồng Quân – 20214060

Hà Nội-2024

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>1.3 Y<small>ÊU CẦU CỦA DỰ ÁN</small> ... 6</b>

<i><b><small>1.3.1YÊU CẦU VỀ CHỨC NĂNG ...6</small></b></i>

<i><b><small>1.3.2YÊU CẦU VỀ PHI CHỨC NĂNG ...7</small></b></i>

<i><b><small>1.3.3YÊU CẦU VỀ DỮ LIỆU ...7</small></b></i>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<i><b><small>3.3.1BIỂU ĐỒ HOẠT ĐỘNG ĐĂNG NHẬP ...17</small></b></i>

<i><b><small>3.3.2BIỂU ĐỒ HOẠT ĐỘNG THÊM THÀNH VIÊN ...18</small></b></i>

<i><b><small>3.3.3BIỂU ĐỒ HOẠT ĐỘNG CẬP NHẬT THÔNG TIN THÀNH VIÊN ...19</small></b></i>

<i><b><small>3.3.4BIỂU ĐỒ HOẠT ĐỘNG XOÁ THÀNH VIÊN ...20</small></b></i>

<i><b><small>3.3.5BIỂU ĐỒ HOẠT ĐỘNG TẠO NHÓM ...21</small></b></i>

<i><b><small>3.3.6BIỂU ĐỒ HOẠT ĐỘNG TẠO DỰ ÁN ...22</small></b></i>

<i><b><small>3.3.8BIỂU ĐỒ HOẠT ĐỘNG THÊM THÀNH VIÊN VÀO DỰ ÁN ...23</small></b></i>

<b>3.4 Đ<small>ẶC TẢ CHỨC NĂNG</small> ... 24</b>

<i><b><small>3.4.1.ĐẶC TẢ CHỨC NĂNG 1:QUẢN LÝ THÀNH VIÊN ...24</small></b></i>

<i><b><small>3.4.2.ĐẶC TẢ CHỨC NĂNG 2:QUẢN LÝ DỰ ÁN ...26</small></b></i>

<i><b><small>3.4.3.ĐẶC TẢ CHỨC NĂNG:QUẢN LÝ TEAM ...28</small></b></i>

<i><b>CHƯƠNG 4. THIẾT KẾ CƠ SỞ DỮ LIỆU ... 30</b></i>

<b>4.1 N<small>HẬN DIỆN CÁC THỰC THỂ VÀ THUỘC TÍNH</small> ... 30</b>

<i><b><small>4.1.1CÁC THỰC THỂ VÀ THUỘC TÍNH ...30</small></b></i>

<i><b><small>4.1.2XÂY DỰNG MƠ HÌNH THỰC THỂ LIÊN KẾT ...32</small></b></i>

<i><b><small>4.1.3CHUYỂN MƠ HÌNH THỰC THỂ LIÊN KẾT SANG MƠ HÌNH QUAN HỆ ...32</small></b></i>

<i><b><small>4.1.4CHUẨN HỐ DỮ LIỆU ...33</small></b></i>

<i><b><small>4.1.5TỪ ĐIỂN DỮ LIỆU CÁC PHA THIẾT KẾ ...34</small></b></i>

<i><b><small>5.3.1GIAO DIỆN ĐĂNG NHẬP ...40</small></b></i>

<i><b><small>5.3.2GIAO DIỆN HOME VỚI ADMIN ...40</small></b></i>

<i><b><small>5.3.3GIAO DIỆN HOME VỚI USER ...41</small></b></i>

<i><b><small>5.3.4GIAO DIỆN HOME ...41</small></b></i>

<i><b><small>5.3.5GIAO DIỆN QUẢN LÝ THÀNH VIÊN ...43</small></b></i>

<i><b><small>5.3.6GIAO DIỆN CHI TIẾT NGƯỜI DÙNG ...44</small></b></i>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

Nhóm 17

3

<i><b><small>5.3.7GIAO DIỆN QUẢN LÝ DỰ ÁN ...44</small></b></i>

<i><b><small>5.3.8GIAO DIỆN CHI TIẾT DỰ ÁN ...46</small></b></i>

<i><b><small>5.3.9GIAO DIỆN QUẢN LÝ NHÓM ...46</small></b></i>

<i><b><small>5.3.10GIAO DIỆN GIỚI THIỆU...48</small></b></i>

<i><b>CHƯƠNG 6. DEMO DỰ ÁN, KIỂM THỬ, SỬA LỖI ... 48</b></i>

<b>6.1K<small>ẾT QUẢ</small> ... 48</b>

<i><b><small>6.1.1ĐẠT ĐƯỢC ...48</small></b></i>

<i><b><small>6.1.2CHƯA ĐẠT ĐƯỢC ...49</small></b></i>

<i><b><small>6.1.3HƯỚNG PHÁT TRIỂN ...49</small></b></i>

<b>6.2D<small>EMO MỘT SỐ HOẠT ĐỘNG CỦA CHƯƠNG TRÌNH</small> ... 49</b>

<b>6.3M<small>INH HỌA QUÁ TRÌNH KIỂM THỬ</small>,<small> LẬP TRÌNH PHỊNG NGỪA</small>,<small> GỠ RỐI</small> ... 52</b>

<i><b>KẾT LUẬN ... 53</b></i>

<b>Danh mục hình vẽ </b>

<i><small>Hình 3.1: Use Case ... 14</small></i>

<i><small>Hinh 3.2: Biểu đồ phân cấp chức năng ... 15</small></i>

<i><small>Hình 3.3: Sơ đồ luồng dữ liệu ... 16</small></i>

<i><small>Hình 3.4: Biểu đồ hoạt động đăng nhập ... 17</small></i>

<i><small>Hình 3.5: Biểu đồ hoạt động thêm thành viên ... 18</small></i>

<i><small>Hinh 3.6: Biểu đồ hoạt động cập nhật thơng tin thành viên ... 19</small></i>

<i><small>Hình 3.7: Biểu đồ hoạt động xố thành viên ... 20</small></i>

<i><small>Hình 3.8: Biểu đồ hoạt động tạo nhóm ... 21</small></i>

<i><small>Hình 3.9: Biểu đồ hoạt động tạo dự án ... 22</small></i>

<i><small>Hình 3.10: Biểu đồ hoạt động thêm thành viên vào nhóm ... 23</small></i>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<i><small>Hình 5-8: Bảng các thành viên có chức năng xóa, sửa ... 43</small></i>

<i><small>Hình 5-9: Màn hình sửa thơng tin thành viên ... 43</small></i>

<i><small>Hình 5-10: Màn hình thơng tin chi tiết thành viên ... 44</small></i>

<i><small>Hình 5-11: Màn hình thêm project ... 45</small></i>

<i><small>Hình 5-12: Màn hình sửa project ... 45</small></i>

<i><small>Hình 5-13: Màn hình thêm thành viên vào project ... 45</small></i>

<i><small>Hình 5-14: Màn hình thơng tin chi tiết dự án ... 46</small></i>

<i><small>Hình 5-15: Màn hình thêm nhóm mới và bảng quản lý nhóm ... 47</small></i>

<i><small>Hình 6.4: Trước khi sửa thơng tin thành viên ... 50</small></i>

<i><small>Hình 6.5: Sau khi sửa thơng tin thành viên ... 51</small></i>

<i><small>Hình 6.6: Trước khi thêm thành viên vào team ... 51</small></i>

<i><small>Hình 6.7: Sau khi thêm thành viên vào team ... 51</small></i>

<b>Danh mục bảng biểu </b>

<i><small>Bảng phân chia công việc ...8</small></i>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>1.2 Mục tiêu của dự án </b>

1.2.1 Đối tượng hướng tới

Đối tượng hướng tới của dự án chính là những phịng nghiên cứu có số lượng thành viên đơng, các dự án triển khai phức tạp, trang thiết bị máy móc phục vụ lớn, cần quản lý tài chính, chi tiêu cho lab. Trang web được sử dụng bởi các quản lý, thành viên của phòng lab.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

Nhóm 17

6

1.2.2 Phạm vi dự án

<b>1.3 Yêu cầu của dự án </b>

1.3.1 Yêu cầu về chức năng

Phần mềm cần có những chức năng sau: Quản lý thành viên:

• Thêm, xóa, cập nhật thơng tin thành viên của Lab

• Tìm kiếm thành viên theo tên, theo bộ lọc Quản lý nhóm:

• Tạo mới, xóa, cập nhật thơng tin của nhóm

• Thêm, xóa thành viên trong nhóm

• Chỉ định trưởng nhóm

• Tìm kiếm nhóm theo tên, theo bộ lọc Quản lý dự án:

• Tạo mới, xóa, cập nhật thơng tin của dự án

• Thêm, xóa, cập nhật thơng tin của thành viên (đã thuộc một nhóm) trong dự án

• Thêm, xóa, cập nhật thơng tin các chi phí của dự

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

1.3.2 Yêu cầu về phi chức năng -Hiệu năng:

• Hệ thống phải nhẹ, không tốn nhiều dung lượng bộ nhớ. Hỗ trợ 24/24 và 365/365 ngày.

• Phải đăng nhập mới có thể truy cập.

• Chỉ quản lý mới có thể thay đổi thơng tin. -Ngơn ngữ: Gồm cả tiếng Anh và tiếng Việt 1.3.3 Yêu cầu về dữ liệu

• Dữ liệu được hiển thị rõ ràng để thành viên có thể quan sát. • Dữ liệu từng mục được liên kế hợp lí với nhau.

• Dữ liệu rõ ràng, mạch lạc tương ứng với vai trị.

• Dữ liệu được phân biệt với nhau qua ID, không trùng lặp

<b>1.4 Các cơng cụ sử dụng </b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

Nhóm 17

8

1.4.1 Ngơn ngữ, thư viện Phía Backend: -

Ngơn ngữ: Javascript -Framework: Node.js -ORM: Sequelize

Phía Frontend:

- Ngơn ngữ : Javascript - Framework: ReactJS

- Design component Library: MUI

- Redux toolkit, Redux persist, ReactJS Debugger, Async storage - API: Axios request

<b>2.1 Bảng phân công công việc </b>

Bảng phân chia công việc

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Nhóm 17

9

Phạm Văn An 20213790 -Font-end -Back-end

-Nội dung thuyết trình

-Back-end: thêm thơng tin chi tiết cho thành viên, lấy thông tin chi tiết từng thành viên -Font-end: thiết kế font-end cho web

-Làm nội dung cho các buổi báo cáo

Phạm Viết Chuyên -Trưởng nhóm -BackEnd -Thuyết trình

-Phân chia cơng việc cho từng thành viên và kiểm tra tiến độ công việc.

-Viết Back-end cho toàn bộ các chức năng của trang web. -Thuyết trình, làm báo cáo các buổi trình bày.

-Back-end

-Thiết kế cơ sở dữ liệu

-Back-end: Lấy thông tin chi tiết từng project.

-Front-end: Làm chức năng sửa, xóa, hiển thị chi tiết project.

-Cơ sở dữ liệu: Thiết kế sơ đồ ERD.

-Làm nội dung cho các buổi báo cáo.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Nhóm 17

10

-Nội dung slide

-Viết backend cho các chức năng của trang web

-Chuẩn bị slide, báo cáo cho các buổi trình bày

1/10/2023 10/10/2023 MS Word

Báo cáo hiện trạng

Hoàn thành 2 Xác định mục tiêu 1/10/2023 10/10/2023 MS

Word

Các mục tiêu hướng tới

Hồn thành

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Nhóm 17

11 chức năng

và phi chức năng 3 Phân tích hệ thống 10/10/2023 25/10/2023 UML Sơ đồ

chức năng, sơ đồ luồng dữ liệu

Hoàn thành

4 Thiết kế CSDL 10/10/2023 25/10/2023 Sơ đồ ERD

Hoàn thành 4.1 Nhận diện thực thể

của hệ thống, liệt kê thuộc tính, lập từ điển dữ liệu

thành

4.2 Đưa ra các giả thiết hợp lý về các phụ thuộc hàm cần có

thành

thành 4.4 Vẽ sơ đồ thực thể

liên kết của hệ thống

10/10/2023 25/10/2023 Mơ hình thực thể liên kết

Hồn thành

4.5 Lập trình phía backend

25/10/2023 23/12/2023 VS Code

Hồn thành 4.6 Lập trình giao diện

cho phần mềm

15/11/2023 29/12/2023 VS code

Hoàn thành

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Nhóm 17

12 5 Báo cáo và ppt

final

2/1/2024 14/1/2024 MS word

Báo cáo hiện trạng

Hoàn thành 6 Kiểm thử và sửa lỗi 29/12/2023 8/1/2024 Postma

n

Hoàn thành

thành

<b>2.3 Khó khăn và lợi thế khi triển khai dự án </b>

2.3.1.Thuận lợi

-Mỗi thành viên có sự nỗ lực, chăm chỉ vừa học vừa thực hiện sản phẩm. Mọi người đều cố gắng hồn thành cơng việc được giao đầy đủ, đúng thời hạn. -Mọi thành viên đều có ý thức tự giác, kỷ luật hồn thành theo tiến độ đề ra. -Các thành viên làm việc, trao đổi, giúp đỡ lẫn nhau mỗi khi gặp khó khăn.

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Nhóm 17

13

<b>CHƯƠNG 3. PHÂN TÍCH HỆ THỐNG </b>

<b>3.1 Phân tích hệ thống về chức năng </b>

-Người dùng bình thường: Xem thơng tin thành viên lab, các project trên lab, thông tin giới thiệu về lab.

-Admin: Có thể quản lý các cơng việc trên lab, quản viên, quản lý các team, quản lý các project.

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

Nhóm 17

15

<i>Hinh 3.2: Biểu đồ phân cấp chức năng </i>

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

Nhóm 17

16

<b>3.2 Sơ đồ luồng dữ liệu </b>

<i>Hình 3.3: Sơ đồ luồng dữ liệu </i>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

Nhóm 17

17

<b>3.3 Biểu đồ hoạt động </b>

<i>Hình 3.4: Biểu đồ hoạt động đăng nhập</i>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Nhóm 17

18

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

Nhóm 17

19

<i>Hinh 3.6: Biểu đồ hoạt động cập nhật thông tin thành viên</i>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

Nhóm 17

20

<i>Hình 3.7: Biểu đồ hoạt động xoá thành viên</i>

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

Nhóm 17

21

<i>Hình 3.8: Biểu đồ hoạt động tạo nhóm</i>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

Nhóm 17

22

<i>Hình 3.9: Biểu đồ hoạt động tạo dự án</i>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Nhóm 17

23

<i>Hình 3.10: Biểu đồ hoạt động thêm thành viên vào nhóm</i>

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

Nhóm 17

24

<i>Hình 3.11: Biểu đồ hoạt động thêm thành viên vào dự án</i>

<b>3.4 Đặc tả chức năng </b>

<i> 3.4.1. Đặc tả chức năng 1: Quản lý thành viên </i>

3.4.1.1 Thêm thành viên vào lab Đầu đề Tên chức

năng

Thêm thành viên vào lab

Đầu vào Thông tin thành viên mới, tên thành viên, email, password,

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

Nhóm 17

25 Đầu ra Tài khoản đăng nhập gồm có email,

password đã được hash

Thân 1. Hệ thống yêu cầu admin nhập vào thông tin thành viên mới

2. Nếu email đã có trong database sẽ phải nhập lại 3.4.1.2. Xoá thành viên khỏi lab

Đầu đề Tên chức năng

Xoá thành viên khỏi lab

Đầu vào ID của thành viên

Đầu ra ID và thơng tin thành viên được xố khỏi bảng manage và database

Thân Admin nhấn vào biểu tượng xoá ở cột actions trong bảng thành viên để xoá nhóm

3.4.1.3. Cập nhật thơng tin thành viên

Đầu đề Tên chức năng

Cập nhật thông tin thành viên

Đầu vào Các thông tin cần cập nhật của thành viên (nếu khơng cần thay đổi thì bỏ trống trường đó)

Đầu ra Thơng tin thành viên được cập nhật

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

Nhóm 17

26 Thân Admin nhấn vào biểu tượng edit trong cột actions

Bảng manage member hiện ra và admin có thể sửa các thông tin của thành viên

Ấn save để lưu lại 3.4.1.4. Tìm kiếm thành viên

Đầu đề Tên chức năng

Tìm kiếm thành viên

Đầu vào ID của thành viên( một hoặc tất cả)

Đầu ra Thơng tin của tồn bộ thành viên(nếu đầu vào là All)

Thông tin của 1 thành viên (nếu đầu vào là 1 ID)

Thân Thông tin thành viên được hiển thị bằng một danh sách Bấm vào một thành viên bất kỳ để xem chi tiết

3.4.2.1. Tạo mới dự án

Đầu đề Tên chức năng

Quản lý dự án

Đầu vào Thông tin của dự án: tên, mô tả, ảnh …

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

Nhóm 17

27 Đầu ra Dự án được tạo

Danh sách dự án sau khi tạo

Thân Admin điền tên và chọn tệp của dự án sau đó nhấn save

3.4.2.2. Thêm thành viên vào dự án

Đầu đề Tên chức năng

Thêm thành viên vào dự án

Đầu vào ID của dự án và ID của thành viên

Đầu ra Thành viên được thêm vào dự án

Thân Admin chọn dự án và thành viên sau đó nhấn save Nếu thành viên đã có từ trước thì hệ thống sẽ thơng báo qua pop-up

3.4.2.3. Xố dự án

Đầu đề Tên chức năng

Xoá dự án

Đầu vào ID của dự án

Đầu ra Dự án được xố khơng cịn được hiển thị trong danh sách

Thân Admin nhấn vào biểu tượng xoá ở cột actions trong bảng manage projects

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

Thân Admin điền tên nhóm, thơng tin nhóm

Status là 1 khi nhóm cịn hoạt động và 0 khi nhóm đã ngừng hoạt động

Ấn save để lưu lại

3.4.3.2. Thêm thành viên vào nhóm

Đầu đề Tên chức năng

Thêm thành viên vào nhóm

Đầu vào ID của nhóm và ID của thành viên

Đầu ra Thành viên được thêm vào nhóm và hiển thị vào danh sách

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

Nhóm 17

29 Thân Admin chọn nhóm và thành viên sau đó nhấn save để lưu

Nếu thành viên đã có trong nhóm hệ thống sẽ thơng báo qua pop-up

3.4.3.3. Xố nhóm

Đầu đề Tên chức năng

Xố nhóm

Đầu vào ID của nhóm

Đầu ra Nhóm được xố khỏi bảng manage teams Danh sách nhóm sau khi xố

Thân Admin nhấn vào biểu tượng xoá ở cột actions trong bảng manage teams để xố nhóm

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

- lastName: Tên user.

- email: Tên email cá nhân của user. - role: Vai trò của user trong lab.

- isActive: Chỉ ra user đã được vào lab hay chưa. - password: Mật khẩu đăng nhập website của user. - createdAt: Tài khoản user được tạo ngày nào.

- updatedAt: Tài khoản user được cập nhật vào ngày nào.

- deleteAt: Tài khoản user được xóa (nếu có) vào khi nào trong tương lai. - image: Hình ảnh của user.

b) Thực thể teams

- id: Mã của từng team trong lab, mã này là duy nhất. - name: Tên của team.

- description: Mô tả về team.

- isActive: Team đã được kích hoạt chưa. - createdAt: Team được tạo ngày nào.

- updatedAt: Team được cập nhật vào ngày nào.

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

- image: Ảnh của project.

- createdAt: Project được tạo ngày nào.

- updatedAt: Project được cập nhật vào ngày nào.

- deleteAt: Project được xóa (nếu có) vào khi nào trong tương lai. b) Thực thể jointeams

- id: Mã của từng team được các users tham gia. - idUser: Mã của các users.

- idTeam: Mã của các teams. - createdAt: Ngày được tạo.

- updatedAt: Ngày được cập nhật. - deleteAt: Ngày được xóa.

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

Nhóm 17

32

- createdAt: Ngày được tạo.

- updatedAt: Ngày được cập nhật. - deleteAt: Ngày được xóa.

<i>Hình 4.1: Mơ hình thực thể liên kết</i>

Mơ hình thực thể liên kết với các quan hệ kết nối với nhau.

Mô hình quan hệ ta chuyển các quan hệ kết nối thành các quan hệ cụ thể giữa các mảng với nhau.

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

Nhóm 17

33

<i>Hình 4.2: Mơ hình quan hệ</i>

Cơ sở dữ liệu được chuẩn hóa theo kiểu 3-NF: • Các thuộc tính của bảng phải là nguyên tố.

• Giá trị của các thuộc tính trên các hàng phải là đơn trị, khơng chứa nhóm lặp.

• Khơng có một thuộc tính nào có giá trị có thể tính tốn được từ một thuộc tính khác.

• Loại bỏ các thuộc tính khơng khóa phụ thuộc vào một bộ phận khóa chính và tách ra thành một bảng riêng, khóa chính của bảng là bộ phận của khóa mà chúng phụ thuộc vào.

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

password VARCHAR Giá trị là chữ nhưng bị mã hóa

tính là hình ảnh

Các thuộc tính bảng teams

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

Nhóm 17

35

description TEXT Giá trị là một đoạn văn

Các thuộc tính bảng projects

descriptionHTML TEXT Giá trị là một đoạn văn (Được định dạng để viết lên

trang web) descriptionMarkdown TEXT Giá trị là một đoạn

văn (Được định dạng để viết dưới dạng text thường) image LONGBLOB Giá trị thuộc tính

là hình ảnh

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

Nhóm 17

36

Các thuộc tính bảng jointeams

Các thuộc tính bảng joinprojects

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

Nhóm 17

37

<b>4.2 Class diagram </b>

<i>Hình 4.3: Class diagram </i>

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

- Design component Library: MUI, CSS

</div><span class="text_page_counter">Trang 41</span><div class="page_container" data-page="41">

Nhóm 17

40

- Services: chứa các file lấy api từ BE

- Store: chứa cái file config API theo từng tính năng, các Slide: reducer để thao tác với redux-persist (các state khi gọi API)

-Style: Chứa các file CSS chung của chương trình

-Translation: Chứa các file tiện ích có chức năng chuyển đơi ngơn ngữ

- Utils: Chứa các file tiện ích trong quá trình viết code có tác dụng reuse code, tránh file lớn, ...

- index.js: File khởi chạy chương trình - một số file config khác

<b>5.3 Giao diện Web</b>

<i>5.3.1 Giao diện đăng nhập </i>

<i>Hình 5-1: Màn hình đăng nhập </i>

<i>5.3.2 Giao diện Home với admin </i>

- Đối với giao diện Home của admin sẽ có thêm chức năng Mange Member trên thanh công cụ, thanh công cụ cũng thể hiện kết nối đến 1 số giao diện

</div><span class="text_page_counter">Trang 42</span><div class="page_container" data-page="42">

Nhóm 17

41

khác.

<i>Hình 5-2: Màn hình chính với admin </i>

<i>5.3.3 Giao diện Home với User </i>

- Đối với giao diện Home của User sẽ khơng có chức năng Manage Member, người dùng chỉ có thể xem web tại màn hình Home và các thơng tin của User và Project

<i>Hình 5-3: Màn hình chính với user </i>

<i>5.3.4 Giao diện Home </i>

- Giao diện thể hiện thông tin của các dự án và thành viên trong Lab ở đây có

</div><span class="text_page_counter">Trang 44</span><div class="page_container" data-page="44">

Nhóm 17

43

<i>5.3.5 Giao diện quản lý thành viên </i>

- Quản lý thành viên với các chức năng thêm, xóa , sửa thành viên

<i>Hình 5-7: Màn hình thêm thành viên </i>

<i>Hình 5-8: Bảng các thành viên có chức năng xóa, sửa </i>

<i>Hình 5-9: Màn hình sửa thơng tin thành viên </i>

</div><span class="text_page_counter">Trang 45</span><div class="page_container" data-page="45">

Nhóm 17

44

<i>5.3.6 Giao diện chi tiết người dùng </i>

- Giao diện thông tin chi tiết của từng người dùng

<i>Hình 5-10: Màn hình thơng tin chi tiết thành viên </i>

<i>5.3.7 Giao diện quản lý dự án </i>

- Quản lý dự án với các chức năng thêm, xóa ,sửa dự án

</div><span class="text_page_counter">Trang 46</span><div class="page_container" data-page="46">

Nhóm 17

45

<i>Hình 5-11: Màn hình thêm project </i>

<i>Hình 5-12: Màn hình sửa project </i>

- Giao diện thêm thành viên vào dự án

<i>Hình 5-13: Màn hình thêm thành viên vào project </i>

</div><span class="text_page_counter">Trang 47</span><div class="page_container" data-page="47">

Nhóm 17

46

<i>5.3.8 Giao diện chi tiết dự án </i>

- Giao diện cho biết thông tin chi tiết của dự án

<i>Hình 5-14: Màn hình thơng tin chi tiết dự án </i>

<i>5.3.9 Giao diện quản lý nhóm </i>

- Quản lý nhóm với các chức năng thêm, xóa ,sửa nhóm

</div><span class="text_page_counter">Trang 48</span><div class="page_container" data-page="48">

Nhóm 17

47

<i>Hình 5-15: Màn hình thêm nhóm mới và bảng quản lý nhóm </i>

<i>Hình 5-16: Màn hình sửa nhóm </i>

- Giao diện thêm thành viên vào nhóm

<i>Hình 5-17: Màn hình thêm thành viên vào nhóm </i>

</div><span class="text_page_counter">Trang 49</span><div class="page_container" data-page="49">

− Xây dựng các giao diện đẹp mắt giúp , giao diện dễ sử dụng.

− Xây dựng được thông tin chi tiết về project, từng thành viên của Lab − Trang web có thể chuyển đổi ngơn ngữ giữa tiếng anh và tiếng việt

</div>

×