Nếu không có sự hỗ trợ của tin học, việc quản lý này phải cần khá nhiều người, chia thành nhiều khâu, mới có thê quản lý được toàn bộ hồ sơ học sinh thông tin, điểm số, học bạ...., lớp h
Trang 1BO GIAO DUC VA DAO TAO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
KHOA: CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN
HOC PHAN: LAP TRINH HUONG DOI TƯỢNG VOI JAVA
DE SO 6: QUAN LY HO SO SINH VIEN DAI HOC CONG NGHE DONG A
Trang 2BO GIAO DUC VA DAO TAO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
KHOA: CÔNG NGHỆ THÔNG TIN
Sinh viên thực hiện Mã sinh viên | Điểm bằng số | Điểm bằng chữ
Pham Hong Sang 20213103
Tran Van Son 20213199
Hoang Trong Dai 20213158
CAN BO CHAM 1 CAN BO CHAM 2
Bắc Ninh, tháng 10 năm 2023
Trang 3
PHAN 1: CÁC KIÊN THỨC NÈN TÁNG - Lọ HH HH HH Hà Hà 2 TỎNG QUAN NGÔN NGỮ JAVA HH nêu 2
3 Thư VIỆN: KG HH THẾ HT TH TH TH HH HH nh hy 2
4 Quản lý bộ nhớ: - - 5 <1 TT TH HH Tà HH HH Tà thờ 2
6 Xử lý ngoại lệ (Exception Handling): 3
TONG QUAN VE LAP TRINH HUONG DOI TUQNG 4
6 _ Ngôn ngữ lập trình hướng đối tượng phố biến: 5
PHẢN 2: TÔNG QUAN VÀ PHẦN TÍCH BÀI TOÁN 25-2 thiêu 6
2 C&e clatre nding hé thong n4 9
THIET KE MO HINH LOB ssssssscssssssssssssesccssesscsnsseesesssnscsessunscsenssvesennnncesnneesnuesnnseeeveeena 14 msm ẽ 14
Trang 4
1 Class 16
3 Sign IN, SIGM UỊD << TH HH HH TH HT gu 1ó
4 Mô hình quan hệ giữa các bảng ó5 cv HH TH HT HH nh, 17
Il GIAO DIEN CAC CHỨC NĂNG CHÍNH ©5 55-222 S2 E2 HS Hy re 27
PC n6 nh ố ố ố ố ố ốố 27 3 Giao diện thêm, chỉnh sửa các thông tin của sinh viên - ¿5 + Sài 28
5Š Chỉnh sửa lỚP - LH HH HH TH HH HT TH TH TT HH HT và 29
6 Lưu và xuất fẨile - tư 1911 E117 TT 1g 7g sọ ve 30
PHẢN 6 :CÁC TÀI LIỆU THAM KHÁO 5c c2 21, ty gìn hà hết ty 34
Trang 5LOI NOI DAU Trong thời kỳ sử dụng công nghệ vào đời sông con người, xuất hiện nhiều trong các
xí nghiệp công ty, các cơ quan hành chính xã hội Con người đang tạo ra những phần
mềm công nghệ thông tin vào việc phục vụ cho nhu cầu và lợi ích của con người Trong
đó xây dựng phần mềm phục vụ cho nền giáo dục cũng được chủ trọng rất nhiều Từ các trường cao đăng, đại học cho đến các cấp nhỏ hơn như trường phô thông, các cấp đều dang sử dụng phần mềm quản lý để giảm thiểu tối đa những khó khăn trong công tác quản lý như lưu trữ hồ sơ học sinh, sinh viên, quản lý điểm Nếu trước đây phải lưu trữ rất nhiều trong các kho chứa thì bây giờ chỉ cần một chiếc máy tính chúng ta có thê lưu trữ cả kho hô sơ của trường
Ví dụ như việc quản lý điểm số học sinh trong trường đại học Nếu không có sự hỗ trợ của tin học, việc quản lý này phải cần khá nhiều người, chia thành nhiều khâu, mới có thê quản lý được toàn bộ hồ sơ học sinh (thông tin, điểm số, học bạ ), lớp học (sỉ số, giáo viên chủ nhiệm ), giáo viên, cũng như các nghiệp vụ tính điểm trung bình, xếp loại học lực cho học sinh toàn trường (số lượng học sinh có thê lên đến hàng ngàn) Các công việc này đòi hỏi nhiều thời gian và công sức, mà sự chính xác và hiệu quả không
cao, vì đa số đều làm bằng thủ công rat it tu động Một số nghiệp vụ như tra cứu, thông
kê, và hiệu chỉnh thông tin kha vất vả Ngoài ra còn có một số khó khăn vẻ vấn đề lưu trữ
khá đồ sộ, dé bị that lạc, tốn kém, Trong khi đó, các nghiệp vụ này hoàn toàn có thê tin học hoá một cách đễ dàng Với sự giúp đỡ của tin học, việc quán lý học vụ sẽ trở nên đơn giản, thuận tiện, nhanh chóng và hiệu quả hơn rất nhiều
Trang 6PHAN 1: CAC KIEN THUC NEN TANG
L TỎNG QUAN NGÔN NGỮ JAVA
Java là một ngôn ngữ lập trình mạnh mẽ va pho biến được phát triển bởi Sun Microsystems (nay la Oracle Corporation) vào những năm 1990
Java được thiết kế với mục tiêu an toàn, bảo mật và chống xâm nhập, giúp ngăn chặn
nhiều lỗ hỗng bảo mật phổ biến
Trang 7động được thu gom bởi Garbage Collector
5 Da luéng (Multithreading):
Java hé tro da luồng một cách nền tang, cho phép bạn thực hiện nhiều tác vụ đồng thời
trong một ứng dụng
6 Xử lý ngoại lệ (Exception Handling):
Java có cơ chế xử lý ngoại lệ mạnh mẽ, giúp kiểm soát và xử lý lỗi một cách chính xác
7 Kha nang di dong (Portability):
Ung dụng Java có thể chạy trên nhiều nền tảng khác nhau mà không cần viết lại mã
nguồn (nhờ JVM)
§ Cộng đồng và hỗ trợ:
Java có một cộng đồng lớn, với nhiều nguồn học tập và hỗ trợ trực tuyến
Có nhiều IDE (Integrated Development Environment) manh mé nhu Eclipse, IntelliJ IDEA, va NetBeans dé phat trién tng dung Java
Trang 8II TONG QUAN VE LAP TRINH HUONG DOI TUQNG
Lap trinh hung d6i tugng (Object-Oriented Programming - OOP) la mét phương pháp lập trình mà các chương trình được xây dựng bang cách tạo ra và tương tác với các đối tượng Dưới đây là một tông quan về lập trình hướng đối tượng:
1 Khái niệm cơ bản:
Trong OOP, các đối tượng là các thực thê ảo có thê biểu diễn một phân của thế giới
thực
Đối tượng bao gồm đữ liệu (thuộc tính) và các hành vi (phương thức) liên quan đến nó
2 Tinh chat co ban cia OOP:
- Tính đóng gói (Encapsulation): Đóng gói đữ liệu và phương thức liên quan vào một đối tượng, che giấu chỉ tiết cài đặt và cung cấp giao điện đề tương tác với đối tượng
- Tính kế thừa (Inheritance): Cho phép bạn tạo ra một lớp mới dựa trên lớp đã có, chia sẻ các thuộc tính và phương thức của lớp cha
- Tính đa hình (Polymorphism): Cho phép các đối tượng của các lớp khác nhau thực hiện các hành vi giống nhau thông qua giao diện chung
3 Lớp và Đối tượng:
Lớp (Class): Là một mô tả hoặc mẫu để tạo ra các đối tượng Nó chứa các thuộc tính và
phương thức chung cho các đối tượng cùng loại
Đối tượng (Object): Là một thê hiện cụ thể của một lớp, có thể sử dụng các phương
thức và thuộc tính của lớp đó
4 Tương tác giữa các đối tượng:
Đối tượng có thê tương tác với nhau thông qua gửi các thông điệp (message) hoặc gọi các phương thức của nhau
Trang 9Mỗi quan hệ giữa các đối tượng co thé la sự kết hợp (composition), ké thira (mherifance), hoặc str dung (association)
5 Ưu điểm của OOP:
Tái sử dụng mã nguồn để dàng nhờ kề thừa và đa hình
Dễ đàng quản lý và duy trì mã nguồn
Tạo ra mã dễ đọc và hiệu hơn, giúp giảm sự phức tạp của mã
6 Ngôn ngữ lập trình hướng đối tượng phố biến:
Có nhiều ngôn ngữ lập trình hướng đối tượng, trong đó Java, C++, C#, Python là một
sô ví dụ nôi tiếng
Trang 104
PHAN 2: TONG QUAN VA PHAN TICH BAI TOAN
I GIOI THIEU BAI TOAN
1 Ly do chon bai toan
Sự gia tăng về số lượng sinh viên và thông tin liên quan tại trường Đại học Công nghệ Đông Á đã làm cho việc quản lý trở nên phức tạp hơn
Cần thiết phải tôi ưu hóa quy trình quản ly thông tin sinh viên đề đảm bảo tính chính
xác và khả năng truy cập để dang
2 Mục tiêu và phạm vỉ của dự án
Xây dựng một ứng dụng quản lý hồ sơ sinh viên sẽ giúp tự động hóa quy trình quản
lý thông tin sinh viên, từ việc ghi nhận thông tin đăng ký, theo dõi tiến trình học tập,
đến việc tạo và cập nhật hồ sơ cá nhân
Hỗ trợ các bộ phận quản lý trong việc tra cứu, cập nhật, và xử lý thông tin liên quan
đến sinh viên
Dam bảo tính bảo mật và quyền riêng tư cho thông tin cá nhân của sinh viên
3 Các tính năng dự kiến
Đăng ký và cập nhật thông tin cá nhân của sinh viên
Quan lý hồ sơ học tap, điểm số, va tién trình học tập
Quản lý thông tin đăng ký học phân và lịch học
Tích hợp cơ chế báo cáo và thông kê cho các bộ phận quản lý
Hệ thống bảo mật đề bảo vệ thông tin cá nhân của sinh viên
Các tính năng dự kiến
Ngôn ngữ sử dụng Java là một ngôn ngữ đa nền tang, có cú pháp dê đọc và hiệu, giúp
Trang 11mạnh mẽ, có hệ thông bảo mật mạnh mé véi Java Security Manager va h6 tro ma hoa dir
liéu
5 Lợi ích dự kiến
Tăng cường sự thuận tiện và hiệu quả trong quản lý hồ sơ sinh viên
Giảm thiều sai sót và lỗ hỗng thông tin
Cung cấp thông tin nhanh chóng và chính xác cho các bộ phận quản lý
Cải thiện trải nghiệm của sinh viên trong việc quản lý thông tin cá nhân và đăng ký học phân
I CÁC TÁC NHÂN VÀ CHỨC NĂNG
1 Các yêu cầu
Việc xây dựng và quản lý hồ sơ sinh viên đòi hỏi một số yêu cầu cụ thê để thực hiện dự án này thành công Dưới đây là một số yêu cầu quan trọng mà bạn cần xem xét khi bắt đầu:
Thiết kế Cơ sở Dữ liệu: Bạn cần xác định cấu trúc dữ liệu cho hồ sơ sinh viên
Su dung MySQL, PostgreSQL, hoac mét hé quan tri co sở đữ liệu (DBMS) khác
đề lưu trữ thông tin sinh viên như tên, ngày sinh, địa chỉ, điểm số, và các thông tin khác
Giao diện người dùng (UI): Xay dựng giao điện người dùng thân thiện để người dùng có thê thêm, sửa đôi và xem thông tin sinh viên dễ dàng Java cung cấp các thư viện như Swing hoặc JavaFX đề phát triển giao điện người dùng
Xử lý Sự kiện: Thêm xử lý sự kiện cho các hoạt động như thêm, sửa, xóa sinh
viên Đảm bảo rằng các thao tác này sẽ thay đôi đữ liệu trong cơ sở đữ liệu Bảo mật: Bảo vệ dữ liệu của sinh viên bằng cách áp dụng các biện pháp bảo mật như xác thực người dùng, quản lý phiên, và phân quyên truy cập đê đảm bao rằng chỉ có người đùng được ủy quyền mới có thê truy cập và chỉnh sửa dữ liệu Tìm kiếm và Lọc: Cung cấp tính năng tìm kiếm và lọc đề người dùng có thê đễ dàng tìm kiếm thông tin sinh viên đựa trên các tiêu chí như tên, lớp, hoặc điểm số
Trang 12Xuất đữ liệu: Cho phép người dùng xuất đữ liệu hồ sơ sinh viên ra các định dang nhu CSV, Excel hoic PDF dé dé đàng chia sẻ hoặc In an
Báo cáo và Thống kê: Tạo các báo cáo và thống kê về thông tin sinh viên, ví dụ như điểm trung bình của mỗi lớp, tông số sinh viên, và các thông tin khác để quản
ly hé so dé dang hon
Quản lý Lỗi: Hệ thống cần xử lý lỗi và ngoại lệ một cach graceful dé dam bao
ôn định và bảo mật
Tương tác với Cơ sở dữ liệu: Sử dụng JDBC hoặc ñamework ORM như
Hibernate để tương tác với cơ sở dữ liệu
Tích hợp với Hệ thông khác (nếu cần): Nếu cần thiết, tích hợp hệ thống với các ứng dụng hoặc dịch vụ khác, chăng hạn như hệ thống thanh toán hoặc hệ thông đăng ký môn học
Kiểm thử và Debug: Kiểm tra hệ thống một cách kỹ lưỡng đề đảm bảo hoạt động đúng đắn và tìm và sửa lỗi nếu có
Tài liệu hóa: Viết tài liệu hướng dẫn sử dụng hệ thống để người dùng và nhà phát triển khác có thê hiểu và sử dụng nó một cách hiệu quả
Phát triển và Triển khai: Phát triển ứng dụng và triển khai nó trên một máy chủ hoặc môi trường sản phẩm thực tế
Hỗ trợ và Bảo trì: Cung cấp hỗ trợ cho người dùng và duy trì ứng dụng bằng
cach cập nhật và sửa lỗi theo nhu cầu
Trang 132 Cac chire nang hé thong
Biéu do chire nang
1 Tìm kiếm hỏ sơ sinh viên
theo đôi tượng ưu tiên
Đưa ra danh sách sinh viên theo lớp
- _ Sinh viên: Người sử dụng cuôi cùng của hệ thông, có quyên xem thông tin
cá nhân của họ và có thê có quyên tìm kiêm thông tin về sinh viên khác trong hệ thông
Trang 14- Hé théng: Dai dién cho phan mém va may chu chay hé thong quan ly hé so sinh viên Hệ thống thực hiện các chức năng bảo mật, xử lý logic nghiệp
vụ, và quản lý cơ sở đữ liệu
- Cơ sở đữ liệu: Là một thành phan quan trong cua hé thong, lưu trữ dữ liệu
về sinh viên, thông tin cá nhân, thông tin về môn học, lớp học và nhiều thông tim khác
Các tác nhân này đóng vai trò quan trọng trong việc thực hiện các use case
và chức năng khác nhau trong hệ thống Việc xác định rõ vai trò và quyền hạn của mỗi tác nhân là quan trọng để đảm bảo tính bảo mật và hiệu suất của hệ
Actor: Nguoi quan tri (Admin)
Mô tả: Người quản trị có quyền thêm, sửa, xóa tài khoản người dùng và cấp quyền truy cập
Trang 152.2.2 quan ly sinh viên
._ Thêm Sinh viên:
Actor: Nguoi quan tri (Admin)
Mô tả: Người quản trị có quyền thêm hồ sơ mới của sinh viên vào hệ thống
Stra đổi Sinh viên:
Actor: Nguoi quan tri (Admin)
Mô tả: Người quản trị có quyền chỉnh sửa thông tin của hỗ sơ sinh viên trong hệ thống
XÓa Sinh viên:
Actor: Nguoi quan tri (Admin)
Mô tả: Người quản tri có quyền xóa hỗ sơ sinh viên khỏi hệ thông
xem Danh sách Sinh viên:
Actor: Người quản trị (Admin), Sinh viên
Mô tả: Người quản trị và sinh viên có thể xem danh sách tất cả hoặc một phần thông tin cơ bản về sinh viên trong hệ thống
2.2.3 Quan lý kết quả học tập
Trang 16<<Extend>>
<<Extend>> :
Actor: Người quản trị (Admin), Sinh Viên
Mô tả: Người quản trị chỉnh sửa thông tin và sinh viên có thể xem thông tin cơ bản trên
hệ thông
5 Tìm kiếm và Lọc:
Actor: Người quản trị (Admin), Sinh viên
Mô tả: Người quán trị và sinh viên có thể tìm kiếm và lọc thông tin sinh viên dựa trên các tiêu chí như tên, lớp, khoa học, ngày sinh, điểm sô, v.v
6 Xuất đữ liệu:
Actor: Người quản trị (Admin), Sinh viên
Mô tả: Người quản trị và sinh viên có thê xuất đữ liệu hồ sơ sinh viên ra các định
đạng như CSYV, Excel, hoặc PDE để chia sẻ hoặc ín ấn
7 Bao mat:
Actor: Hé théng
Mô tả: Bảo vệ tính bảo mật của đữ liệu sinh viên thông qua xác thực người dùng,
quản lý phiên, và phân quyền truy cập
§ Thống kê và Báo cáo:
Trang 17Actor: Nguoi quan tri (Admin)
Mô tả: Người quản trị có thê tạo và xem các báo cáo thông kê về thông tin sinh viên, ví dụ như tong s6 sinh vién, diém trung bình, thông kê theo lớp/khoa học,
V.V.
Trang 18PHAN 3: THIET KE HE THONG
addFrame | editFrame | homeFrame | loginFrame | remunerate | signUp | userProfil
Trang 19
15
E :
addframe.java editFramejava homeFrame,java loginFramejava remunerateFramejava signUpFrame,java userProfileFrame.Java
Danh sách sinh viên thêm
Ds them theo đổi