1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO MÔN HỌC LẬP TRÌNH ỨNG DỤNG CHO KĨ THUẬT

30 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lập trình ứng dụng cho kỹ thuật: Bài tập lớn số 1, 2 & 3. Hệ thống quản lý nhân sự
Tác giả Đàm Minh Nghiên, Lưu Minh Chiến, Ngô Anh Đức, Nguyễn Đức Trung, Nguyễn Trung Kiên, Đào Văn Tuấn
Người hướng dẫn Bùi Thanh Hương
Trường học Trường Đại học Xây dựng
Chuyên ngành Công nghệ thông tin
Thể loại Bài tập lớn
Định dạng
Số trang 30
Dung lượng 2,01 MB

Nội dung

Hệ thống này giúp quản lý thông tin nhân viên, tính lương, thưởng, theo dõi hiệu suất công việc, v.v.. Yêu cầu 2: Giao diện người dùngChức năng: - Thêm mới nhân viên - Sửa thông tin nhân

Trang 1

TRƯỜNG ĐẠI HỌC XÂY DỰNG KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO MÔN HỌC

Lưu Minh Chiến - 0181866 Ngô Anh Đức -

Trang 2

Mục lục

2

Trang 3

Chương 1: Bài tập lớn số 1

I Giới thiệu

Hệ thống quản lý nhân sự là một phần quan trọng trong việc vận hành của bất kỳ doanh nghiệp nào, đặc biệt là các doanh nghiệp bán lẻ Hệ thống này giúp quản lý thông tin nhân viên, tính lương, thưởng, theo dõi hiệu suất công việc, v.v Việc sử dụng hệ thống quản lý nhân sự hiệu quả có thể giúp doanh nghiệp tiết kiệm thời gian, chi phí và nâng cao năng suất làm việc của nhân viên

II Phân tích yêu cầu

1 Yêu cầu 1: Xây dựng các lớp để quản lí nhân viên

Yêu cầu xây dựng các lớp để quản lý nhân viên một cách hợp lý Lớp là một trong những khái niệm cơ bản của lập trình hướng đối tượng (OOP), giúp mô hình hóa các đối tượng trong thế giới thực và khai thác các đặc tính của OOP như tính trừu tượng, tính kế thừa, đa hình, để xây dựng hệ thống phần mềm hiệu quả

Trang 4

2 Yêu cầu 2: Giao diện người dùng

Chức năng:

- Thêm mới nhân viên

- Sửa thông tin nhân viên

- Xóa nhân viên

- Tìm kiếm nhân viên

- Hiển thị danh sách nhân viên theo vị trí việc làm

- Tính tổng doanh thu, các loại doanh thu trung bình trong tháng

- Tính tổng lương trong tháng

- Sắp xếp danh sách nhân viên có doanh thu cao nhất

- Thống kê danh sách nhân viên có mức lương thấp hoặc cao hơn mức lương trung bình của toàn bộ nhân viên trong hệ thống

- Hiển thị nhóm có tổng doanh thu cao nhất

- Thoát chương trình

3 Yêu cầu 3: Giao diện người dùng

- Thêm mới nhân viên: Yêu cầu nhập thông tin thí sinh và lưu vào hệ thống

4

Trang 7

- Sửa thông tin nhân viên: Yêu cầu nhập thông tin cần sửa, kiểm tra và lưu vào hệ thống.

Trang 9

- Xóa nhân viên: Khi xóa nhân viên lưu ý cho người dùng lựa chọn xóa vĩnh viễn hoặc xóa có sao lưu

- Tìm kiếm nhân viên: Tìm kiếm thông qua Mã nhân viên hoặc Tên nhân viên

Trang 10

4 Yêu cầu 4: Tính tổng doanh thu, doanh thu trung bình

- Tính doanh thu dựa trên thu nhập của cửa hàng

5 Yêu cầu 5: Hiển thị danh sách nhân viên

- Hiển thị danh sách nhân viên theo vị trí việc làm

10

Trang 11

6 Yêu cầu 6: Tính tổng lương trong tháng

Tính tổng lương dựa theo từng vị trí của nhân viên trong cửa hàng

7 Yêu cầu 7: Sắp xếp danh sách nhân viên có doanh thu cao nhất

- Hiển thị danh sách nhân viên

Trang 12

- Sắp xếp theo doanh thu của nhân viên

8 Yêu cầu 8: Thống kê danh sách nhân viên có mức lương thấp hoặc cao hơn mức lương trung bình của toàn bộ nhân viên trong hệ thống

- Hiển thị danh sách có mức lương cao hơn mức lương trung bình

- Hiển thị danh sách có mức lương thấp hơn mức lương trung bình

12

Trang 13

9 Yêu cầu 9: Hiển thị nhóm có tổng doanh thu cao nhất

- Hiển thị danh sách nhóm nhân viên có tổng doanh thu cao nhất

10 Yêu cầu 10: Hiển thị nhân viên bán hàng làm lâu nhất

Trang 14

12 Yêu cầu 12: Thoát chương trình

III Test case

ID Case Data Expect Result Actual Result Result

1 Kiểm tra xem

Đối tượng được tạo thành công và có các thuộc tính:

• id: Mã nhân viên

• name: Tên nhân viên

• phone: Số điện thoại

• email: Email

• position: Vị trí làm việc (quản lý hoặc bán hàng)

Đối tượng được tạo thành công và có các thuộc tính:

• id: Mã nhân viên

• name: Tên nhân viên

• phone: Số điện thoại

• email: Email

• position: Vị trí làm việc (quản lýhoặc bán hàng)

Đối tượng được tạo thành công và có các thuộc tính:

• id: Mã nhân viên

• name: Tên nhân viên

• phone: Số điện thoại

• email: Email

• position: Vị trí làm việc (quản lý)

Đối tượng được tạo thành công và có các thuộc tính:

• id: Mã nhân viên

• name: Tên nhân viên

• phone: Số điện thoại

• email: Email

• position: Vị trí làmviệc (quản lý)

Pass

14

Trang 15

• team: Nhóm quản lý.

• num_of_employee:

Số nhân viên trong nhóm quản lý

• revenue: Tổng doanh thu nhóm

• team: Nhóm quản lý

• num_of_employee:

Số nhân viên trong nhóm quản lý

• revenue: Tổng doanh thu nhóm

3 Kiểm tra xem

lớp Salesman có

được tạo thành

công hay không

Tạo một đối tượng mới của lớp Salesman

Đối tượng được tạo thành công và có các thuộc tính:

• id: Mã nhân viên

• name: Tên nhân viên

• phone: Số điện thoại

• email: Email

• position: Vị trí làm việc (bán hàng)

• revenue: Doanh thu

• email: Email

• position: Vị trí làmviệc (bán hàng)

• revenue: Doanh thu

• working_month: Số tháng làm việc

-Tạo một đối tượng mới của lớp Employee

và gán giá trị cho các thuộc tính

Các giá trị được gán cho các thuộc tính

Các giá trị được gán cho cácthuộc tính

Pass

5 Kiểm tra xem

các phương thức

-Cung cấp dữ liệu cho các

Các phương thức hoạt động đúng và trả về kết

Các phương thức hoạt động đúng và trả về kết quả chính

Pass

Trang 16

6 Kiểm tra xem

-Tạo một đối tượng mới của lớp Manager

và gán giá trị cho các thuộc tính

Các giá trị được gán cho các thuộc tính

Các giá trị được gán cho cácthuộc tính

-Sử dụng chức năng thêm nhân viên mới trong hệ thống

Nhân viên mới được thêm vào hệ thống thành công

và có đầy đủ thông tin

Nhân viên mới được thêm vào hệ thống thành công và

có đầy đủ thông tin

có trong hệ thống

-Cung cấp thông tin mới

để sửa đổi

-Sử dụng chức năng sửa thôngtin nhân viên trong hệ thống

Thông tin nhân viên được sửa đổi thành công Thông tin nhân viên được sửa đổi thành công Pass

9 Kiểm tra xem

có trong hệ thống

-Sử dụng chức năng xóa nhân viên trong hệ thống

Nhân viên được xóa khỏi

-Sử dụng chức năng tìm kiếm nhân viên trong hệ thống

Danh sách nhân viên thỏa mãn điều kiện tìm kiếm được hiển thị

Danh sách nhân viên thỏa mãn điều kiện tìm kiếm được hiển thị

Pass

11 Kiểm tra xem

chức năng xem

-Chọn một nhân viên

Hiển thị đầy đủ thông tin chi tiết của nhân viên được

Hiển thị đầy đủ thông tin chi tiết của nhân viên được

Pass16

Trang 17

chi tiết thông tin

-Sử dụng chức năng xuất danhsách nhân viêntrong hệ thống

Danh sách nhân viên được xuất thành file với định dạng đã chọn

Danh sách nhân viên được xuất thành file với định dạng đã chọn

-Xác nhận thông tin chấmcông

-Sử dụng chức năng chấm công cho nhân viên trong hệ thống

Thông tin chấm công đượcghi nhận thành công

Thông tin chấm công được ghi nhận thành công

-Cung cấp các thông số lương(lương cơ bản,

hệ số lương, thưởng, v.v.)

-Sử dụng chức năng tính lương cho nhân viên trong hệ thống

Bảng lương của nhân viên được hiển thị với số tiền lương đúng

Bảng lương của nhân viên được hiển thị với số tiền lương đúng

-Chọn định

Bảng lương được xuất thành file với định dạng đãchọn

Bảng lương được xuất thànhfile với định dạng đã chọn

Pass

Trang 18

doanh thu cao

hệ số lương, thưởng, v.v.)

-Sử dụng chức năng tính lương cho nhân viên trong hệ thống

-Sử dụng chức năng xuất bảnglương trong hệ thống

Xuất bảng các nhân viên

có lương thấp(cao) hơn so với lương trung bình của các nhân viên trong hệ thống

Xuất bảng các nhân viên có lương thấp(cao) hơn so với lương trung bình của các nhân viên trong hệ thống

Đưa ra nhóm có tổng doanh thu cao nhất Đưa ra nhóm có tổng doanh thu cao nhất Pass

Xuất tổng doanh thu, các loại doanh thu trung bình cần truy xuất của cửa hàngtrong tháng hiện tại

Xuất tổng doanh thu, các loại doanh thu trung bình cần truy xuất của cửa hàng trong tháng hiện tại

Pass

20 Thêm thông tin

nhân viên mới

không đúng định

dạng

Tên: NamTuổi:

haimuoilamQuê quán:

12424

Hiện thông báo yêu cầu nhập lại thông tin nhân viên theo quy định

Hiện thông báo yêu cầu nhập lại thông tin nhân viên theo quy định

Xuất bảng thông tin doanh thu của n nhân viên có doanh thu cao nhất theo thứ tự giảm dần

Xuất bảng thông tin doanh thu của n nhân viên có doanh thu cao nhất theo thứ

tự giảm dần

Pass

18

Trang 19

năng tính doanh thu theoyêu cầu

-Thực hiện cách tính lương theo cấpbậc đã được cài đặt:

-Lưu thông tin lương của từngnhân viên

Xuất bảng lương chi tiết của nhân viên kèm theo cấp bậc

Xuất bảng lương chi tiết củanhân viên kèm theo cấp bậc

-Sắp xếp các nhân viên theo từng cấp bậc

Hiển thị bảng danh sách nhân viên cũng với cấp bậc của nhân viên đó theo từng nhóm theo thứ tự chức vụ giảm dần

Hiển thị bảng danh sách nhân viên cũng với cấp bậc của nhân viên đó theo từng nhóm theo thứ tự chức vụ giảm dần

Lưu lỗi của nhân viên vào

bị phạt của từng nhân viêntrong tháng hiện tại-Sử dụng chức năng tính toán

Hiển thị tổng lương mà cửa hàng phải trả cho nhânviên trong tháng hiện tại

Hiển thị tổng lương mà cửa hàng phải trả cho nhân viên trong tháng hiện tại

Pass

Trang 20

Xóa nhân viên có sao lưu thành công

Xóa nhân viên có sao lưu thành công

Hiển thị bảng bao gồm cáclỗi của từng nhân viên và

số lần vi phạm của từng lỗi

đố trong tháng hiện tại

Hiển thị bảng bao gồm các lỗi của từng nhân viên và sốlần vi phạm của từng lỗi đố trong tháng hiện tại

vị trí việc làm trong cửa hàng

-Kiểm tra số lượng chỉ tiêu của từng vị trí

Hiển thị bảng vị trí của từng việc làm và số lượng chỉ tiêu còn thiếu

Hiển thị bảng vị trí của từngviệc làm và số lượng chỉ tiêu còn thiếu

Hiển thị bảng chi phí nhập hàng theo từng giai

đoạn(ngày, tháng, quý)

Hiển thị bảng chi phí nhập hàng theo từng giai

Hiển thị bảng doanh thu của cửa hàng theo từng giai đoạn(ngày, tháng,quý)

Hiển thị bảng doanh thu củacửa hàng theo từng giai đoạn(ngày, tháng,quý)

Pass

Chương 2: Bài tập lớn số 2

20

Trang 21

I Thêm bộ dữ liệu mẫu vào các sheet

II Lưu dữ liệu từ các sheet vào các Dataframe df_sinh_vien,

df_diem_mon_1, df_diem_mon_2, df_diem_mon_3, df_diem_mon_4

và hiển thị các Dataframe đó.

III Tạo thêm cột Ho ten trong các Dataframe df_diem_mon_1,

df_diem_mon_2, df_diem_mon_3, df_diem_mon_4 với dữ liệu dựa vào cột Ma sinh vien.

IV Tạo ra 1 dataframe mới (df_tong_hop) có đầy đủ thông tin của sinh

Trang 22

V Tổng hợp danh sách sinh viên không qua môn (Diem Tong Ket < 4.0)

theo từng môn.

VI Tổng hợp danh sách sinh viên không bị trượt môn nào, có thông tin

điểm trung bình và điểm tổng kết từng môn.

VII Vẽ biểu đồ để hiển thị kết quả học tập của từng sinh viên Nên chọn

loại biểu đồ nào và giải thích lý do tại sao.

22

Trang 23

VIII Xuất ra file CSV với các Dataframe sau khi đã xử lý ở trên với tên

Trang 24

TP: True Positives (Số lượng dự đoán đúng của lớp dương)

FP: False Positives (Số lượng dự đoán sai của lớp dương)

Trang 25

+Code tương ứng:

-Điểm chính xác của Cross-Validation (Cross Validation Score) là điểm số trung bình của độ chính xác trên các fold của tập dữ liệu huấn luyện khi sử dụng phương pháp cross-validation

Trang 26

-Confution matrix (ma trận nhầm lẫn): cho biết số lượng các dự đoán đúng và sai theo từng lớp Nó giúp đánh giá chi tiết hơn hiệu suất của mô hình bằng cách xem xét từng loại lỗi mà mô hình mắc phải

+Công thức:

+Code tương ứng:

26

Trang 27

II Mô tả quá trình thực hiện bài toán; Đánh giá từng bước của quy

trình (nếu có)

1 Xác định vấn đề và thu thập dữ liệu

+Cần xác định rõ vấn đề mà bạn muốn giải quyết bằng AI

+Cần thu thập dữ liệu liên quan đến vấn đề đó, có thể thu thập từ nhiều nguồn khác nhau

-Đánh giá: Quy trình này cần phải được thực hiện cẩn thận để đảm bảo rằng vấn đề được xác định rõ ràng và dữ liệu được thu thập đủ cho mô hình AI

2 Tiền xử lý dữ liệu

-Dữ liệu thô thường không sẵn sàng để sử dụng ngay lập tức cho các mô hình AI

Do đó, cần thực hiện các bước tiền xử lý dữ liệu như:

+Xử lý missing values: Xử lý các giá trị bị thiếu trong dữ liệu

+Chuyển đổi dữ liệu: Đưa dữ liệu về định dạng phù hợp

+Chuẩn hóa và chuẩn bị dữ liệu: Chuẩn hóa dữ liệu để đảm bảo rằng tất cả các thuộc tính đều nằm trong cùng một thang đo

Trang 28

-Đánh giá: Việc lựa chọn và triển khai mô hình đòi hỏi hiểu biết sâu sắc về các thuật toán và mô hình, cũng như sự hiểu biết về bản chất của vấn đề

4 Huấn luyện mô hình

-Huấn luyện mô hình trên tập huấn luyện và điều chỉnh các siêu tham số để cải thiện hiệu suất của mô hình Quá trình này bao gồm:

+Training: Huấn luyện mô hình với tập dữ liệu huấn luyện

+Validation: Sử dụng tập dữ liệu validation để điều chỉnh mô hình và tránh

overfitting

+Tuning: Điều chỉnh siêu tham số (hyperparameter tuning)

-Đánh giá: Quá trình huấn luyện mô hình cần phải được kiểm soát cẩn thận để tránhoverfitting hoặc underfitting

5 Đánh giá mô hình

-Sử dụng các số liệu đánh giá (metrics) để đo lường hiệu suất của mô hình trên tập kiểm tra Một số metrics phổ biến bao gồm:

+Accuracy, Precision, Recall, F1-Score cho các bài toán phân loại

+Mean Squared Error (MSE), Root Mean Squared Error (RMSE) cho các bài toán hồi quy

-Đánh giá: nên sử dụng các metrics phù hợp và kiểm tra tính tổng quát hóa của mô hình trên dữ liệu kiểm tra

6 Triển khai và bảo trì mô hình

-Khi mô hình đã đạt hiệu suất tốt, tiến hành triển khai mô hình vào môi trường sản xuất Quá trình này bao gồm:

+Đóng gói mô hình: Sử dụng các công cụ như pickle, joblib để lưu trữ mô hình.+Triển khai mô hình: Sử dụng các framework như Flask, Django để tạo API phục

Trang 29

1 TH1: Sử dụng thuật toán KNN trong bài toán nhận dạng hoa

-Qua quá trình thực hiện bài thực hành này, chúng em đã thu nhận được kiến thức

về thuật toán K-Nearest Neighbors (KNN) và cách áp dụng nó trong bài toán nhận dạng loài hoa

- KNN là một phương pháp phân loại đơn giản nhưng hiệu quả trong machine learning, hoạt động dựa trên nguyên lý so sánh sự tương đồng giữa các điểm dữ liệu-Quá trình thực hiện bài toán này đã giúp chúng em hiểu rõ các bước cơ bản để sử dụng KNN, bao gồm chuẩn bị dữ liệu, xây dựng mô hình, đánh giá hiệu suất và dự đoán kết quả Đặc biệt, việc chọn số lượng láng giềng (K) phù hợp và đánh giá hiệu suất của mô hình thông qua các độ đo như độ chính xác đã giúp chúng em có cái nhìn tổng quan về cách thức hoạt động và ứng dụng của thuật toán KNN trong thực tế

2 TH2: Sử dụng thuật toán Naive Bayes trong bài toán phân loại và dự đoán thu nhập cá nhân

Qua bài thực hành trên chúng em đã tiếp cận và thu nhận kiến thức về thuật toán Naive Bayes và cách sử dụng nó trong bài toán phân loại và dự đoán thu nhập cá nhân

-Naive Bayes là một phương pháp phân loại dựa trên nguyên lý của định lý Bayes

và giả định đơn giản ("naive") về độc lập giữa các đặc trưng

-Quá trình này đã giúp chúng em hiểu cách chuẩn bị dữ liệu, huấn luyện mô hình vàđánh giá hiệu suất của thuật toán Naive Bayes Việc áp dụng và thực hành trên dữ liệu thực tế cũng giúp chúng em hiểu rõ hơn về ứng dụng của Naive Bayes trong việc phân loại và dự đoán các biến phân loại như thu nhập cá nhân

IV Ngoài 2 thuật toán đã được học, nhóm sinh viên hãy tìm hiểu và

trình bày một thuật toán khác thường được sử dụng trong bài toán học máy.

-Một thuật toán khác thường được sử dụng trong bài toán học máy là Decision Tree (Cây Quyết Định)

-Decision Tree (Cây Quyết Định)

-Cây quyết định phân tách tập dữ liệu thành các phần nhỏ hơn dựa trên các quy tắc quyết định đơn giản Đầu tiên, nó chọn thuộc tính và giá trị ngưỡng để tối đa hóa độtinh khiết của các nhóm con Sau đó, nó xây dựng cây bằng cách tiếp tục phân chia đến khi mỗi nhóm trở thành lá của cây Cuối cùng, cây được sử dụng để dự đoán nhãn hoặc giá trị cho dữ liệu mới

-Ứng dụng của Cây Quyết Định:

+Cây quyết định được sử dụng trong y học, tài chính, marketing và nhiều lĩnh vực

Ngày đăng: 25/05/2024, 17:20

HÌNH ẢNH LIÊN QUAN

Bảng lương của nhân viên  được hiển thị với số tiền  lương đúng. - BÁO CÁO MÔN HỌC LẬP TRÌNH ỨNG DỤNG CHO KĨ THUẬT
Bảng l ương của nhân viên được hiển thị với số tiền lương đúng (Trang 17)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w