# [Py4Fin] Thông báo về việc <i>"Nộp đồ án kết thúc môn học"</i>
## Quy định chung
:::warning
**Thời gian làm bài**: Từ 00h00 ngày 16/11 đến 23h59 ngày 30/11 (2 Tuần)
:::
## Yêu cầu
- Học viên sẽ chủ động tìm kiếm một bộ Dataset mà học viên cảm thấy hứng thú trên nền tảng [Kaggle](https://www.kaggle.com/).
- Đồ án của học viên sẽ phải sử dụng cả 3 công nghệ **SQL, Python, và các thư viện đi kèm** của Python như Pandas, NumPy, Matplotlib nhằm thực hiện các bước:
- Trích xuất dữ liệu từ DataSet bằng Python, Pandas, NumPy
- Xử lý yêu cầu nghiệp vụ và xuất ra các biểu đồ, báo cáo bằng Python, Matplotlib
- Chuyển đổi Data sang SQL theo Connection đã cung cấp trong DBeaver (*trong trường hợp Connection không thể kết nối, xin vui lòng liên hệ người hướng dẫn*)
- Thực hiện Query Data bằng SQL
- **Nâng cao**: Thực hiện query Data bằng SQL thông qua driver của Python và xuất biểu đồ.
## Hình thức nộp bài
- Người nộp bài sẽ bôi đen tên của mình trong phần **Danh sách Lớp học** và chọn vào nút comment. Trong phần comment, người nộp bài sẽ gắn link **google drive** dẫn đến **nơi chứa bài làm** sẽ nộp.
- Bài làm sẽ là những đoạn code đã hoàn thành được nén lại dưới định dạng `.zip`
## Hình thức chấm
- Bài làm của người nộp bài sẽ được người hướng dẫn nhận xét chi tiết và cho điểm dựa theo tiêu chí (*xem mục **Tiêu chí chấm điểm***).
- Trong quá trình chấm bài, người hướng dẫn sẽ yêu cầu người nộp bài giải thích cách làm của mình trong **đoạn code hoặc chức năng ngẫu nhiên** theo các yêu cầu bên dưới:
- Phân tích component code
- Phân tích luồng chạy của code
- Phân tích chức năng hoặc ý nghĩa của đoạn code
- Phân tích đề bài, cách giải quyết
- Khó khăn trong quá trình làm bài và hướng giải quyết hoặc tiếp cận vấn đề được vượt qua khó khăn đó
## Tiêu chí chấm điểm
| Mục | Nội dung | Trọng số | Quy cách tính điểm |
| :-: | :- | :-: | :-
| 1 | **Số lượng bài làm** | 60% | *Xem mục 1*
| 2 | **Cách thức trình bày code** | 5% | Code đúng chuẩn, format, đẹp, dễ đọc, đặt tên logic
| 3 | **Trình bày đoạn code** | 35% | *Xem mục 2*
<u>Giải thích tiêu chí:</u>
1. **Với phần số lượng bài làm**:
- 4 - 5 giai đoạn đã đề cập ở phần **Yêu cầu**
2. **Với phần trình bày đoạn code**:
- Thuyết trình được công việc của từng bước, từng giai đoạn của đồ án
- Chỉ ra được những đoạn code nào sẽ thực hiện những công việc nào
### Khung trình độ
Ứng với tỉ lệ % nhận được, người nộp bài sẽ được đánh gía theo thang như. Lưu ý, tỉ lệ % được ghi chú theo quy tắc nửa khoảng $(x;y]$
| Bậc | Tỉ lệ % | Ý nghĩa |
| :-: | :-: | :- |
| **S** | 95% - 100% | Hoàn thành rất đầy đủ bài tập cần làm, hiểu rõ được code, giải thích và trình bày khoa học, thuyết phục về phần bài làm. Code có thể format theo chuẩn và giúp người đọc thấy được sự logic, khoa học. **Đoạn code viết ra và kĩ năng gốc tốt hơn đa số lập trình viên có chuyên môn**
| **A+** | 90% - 95% | Hoàn tất đầy đủ số lượng bài tập, hiểu rõ và trình bày được đoạn code. Code có thể format theo chuẩn logic, khoa học. **Đoạn code viết ra và kĩ năng gốc tương đương hoặc tiệm cận lập trình viên có chuyên môn**
| **A** | 85% - 90% | Hoàn tất đầy đủ lượng bài tập, hiểu và có thể trình bày được một phần đoạn code. Code có thể format theo chuẩn một phần. **Tương ứng với đoạn code và kĩ năng của Sinh viên tốt nghiệp ngành CNTT**
| **B** | 80% - 85% | Hoàn tất gần như đây đủ lượng bài tập, trình bày hạn chế đoạn code của mình viết ra. Code có thể format theo chuẩn một cách hạn chế.
| **C** | 70% - 80% | Hoàn tất tối thiểu lượng bài tập, có thể trình bài hạn chế hoặc không thể trình bày đoạn code đã nộp.
| **D** | 60% - 70% | Hoàn tất tối thiểu lượng bài tập, tuy nhiên lại không thể trình bày được phân code đã thực hiện
| **F** | < 60% | Không hoàn thành phần bài làm kết thúc Module
## Danh sách lớp
| STT | Tên người nộp bài |
| :-: | :-: |
| 0 | Quốc Hùng |
| 1 | Thanh Tuyền |
| 2 | Ngọc Nhiều |
| 3 | Lan Vy |
| 4 | Tình Lê |