Trong những năm gần đây, các chương trình quản lí không còn xa lạ với chúng ta. Quản lý đã xâm nhập vào các lĩnh vực như giáo dục, kinh doanh,….. đặc biệt trong giáo dục và đào tạo, công tác quản lí điểm sinh viên trong quá trình học tập là rất quan trọng, phức tạp và đòi hỏi độ chính xác cao. Đảm bảo mỗi sinh viên khi ra trường hoặc đang trong quá trình rèn luyện có thể theo dõi chính xác được quá trình học tập của mình. Trong suốt quá trình học tập, điểm quá trình của sinh viên là cơ sở để xét duyệt học bổng, điều kiện tốt nghiệp và phân loại xếp hạng sinh viên. Do đó công tác quản lí điểm sinh viên đòi hỏi phải có sự thống nhất và chính xác tuyệt đối giúp cho bộ phận quản lí sửa đổi, điều chỉnh hợp lí, kịp thời về phương pháp quản lí và kế hoạch cho đào tạo. Hệ thống quản lí điểm sinh viên này sẽ giúp công tác quản lí điểm Sinh viên Trường Đại học Trần Đại Nghĩa giải quyết được những khó khăn trên và tăng tính hiệu quả cho công tác quản lí.
QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ LỜI CẢM ƠN Sau trình học tập rèn luyện khoa Công ngh ệ thông tin tr ường Đ ại h ọc Trần Đại Nghĩa chúng em trang bị kiến thức bản, kỹ thực tế để hồn thành đồ án mơn học Chúng em xin gửi lời cảm ơn chân thành đến thầy Đặng Thế Hùng quan tâm hướng dẫn truyền đạt học kiến thức kinh nghiệm cho chúng em suốt thời gian học học tập mơn Thực tập Lập trình Hướng đối tượng Trong q trình làm đồ án mơn khơng tránh khỏi sai sót, chúng em mong nhận góp ý quý thầy bạn để hoàn thiện TP.Hồ Chí Minh, tháng năm 2019 GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ MỤC LỤC CHƯƠNG 1: KHÁI QUÁT VỀ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG .4 Vị trí tầm quan trọng mơn học Các tính chất CHƯƠNG 2: TỔNG QUAN HỆ THỐNG QUẢN LÍ ĐIỂM SINH VIÊN Tổng quan hệ thống 1.1 Hệ thống tổng quát 1.2 Nhiệm vụ hệ thống 1.3 Chức hệ thống 1.4 Các biểu mẫu sử dụng hệ thống Mơ hình tiến trình nghiệp vụ 2.1 Các kí hiệu sử dụng mơ hình 2.2 Vẽ sơ đồ ERD hệ thống 10 CHƯƠNG 3: CÁC CHỨC NĂNG CHÍNH CỦA PHẦN MỀM QUẢN LÝ ĐIỂM SINH VIÊN 11 Quản lý người dùng 11 Quản lý thông tin sinh viên 12 Quản lý điểm sinh viên 13 Báo cáo danh sách sinh viên 14 Bảng điểm sinh viên 14 CHƯƠNG 4: SƠ ĐỒ QUAN HỆ VÀ CÁC LỚP GIẢI QUYẾT CHỨC NĂNG .15 Sơ đồ quan hệ 15 Các lớp giải chức 16 2.1 Lớp quản lý giảng viên 16 2.2 Lớp quản lý thông tin sinh viên 20 2.3 Lớp quản lý lớp 25 2.4 Lớp quản lý khoa 29 2.5 Lớp quản lý thông tin sinh viên 32 2.6 Lớp quản lý người dùng 40 CHƯƠNG 5: HƯỚNG DẪN SỬ DỤNG PHẦN MỀM .44 GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ LỜI NÓI ĐẦU Trong năm gần đây, chương trình quản lí khơng xa l v ới Quản lý xâm nhập vào lĩnh vực nh giáo d ục, kinh doanh,… đ ặc biệt giáo dục đào tạo, công tác quản lí ểm sinh viên q trình học tập quan trọng, phức tạp đòi hỏi độ xác cao Đảm b ảo m ỗi sinh viên trường trình rèn luy ện có th ể theo dõi xác trình học tập Trong suốt trình h ọc t ập, ểm trình sinh viên sở để xét duyệt học bổng, điều kiện t ốt nghi ệp phân loại xếp hạng sinh viên Do cơng tác quản lí điểm sinh viên đòi h ỏi ph ải có s ự thống xác tuyệt đối giúp cho phận quản lí s ửa đ ổi, ều ch ỉnh hợp lí, kịp thời phương pháp quản lí kế hoạch cho đào tạo Hệ thống quản lí điểm sinh viên giúp công tác qu ản lí ểm Sinh viên Trường Đại học Trần Đại Nghĩa giải khó khăn tăng tính hiệu cho cơng tác quản lí GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ CHƯƠNG 1: KHÁI QUÁT VỀ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Vị trí tầm quan trọng mơn học Lập trình hướng đối tượng (gọi tắt OOP, từ chữ Anh ngữ object-oriented programming), hay gọi lập trình định hướng đối tượng, kĩ thuật lập trình hỗ trợ cơng nghệ đối tượng OOP xem giúp tăng suất, đơn giản hóa độ phức tạp bảo trì mở rộng phần mềm cách cho phép lập trình viên tập trung vào đối tượng phần mềm bậc cao Ngoài ra, nhiều người cho OOP dễ tiếp thu cho người học lập trình phương pháp trước Một cách giản lược, khái niệm nỗ lực nhằm giảm nhẹ thao tác viết mã cho người lập trình, cho phép họ tạo ứng dụng mà yếu tố bên ngồi tương tác với chương trình giống tương tác với đối tượng vật lý Những đối tượng ngôn ngữ OOP kết hợp mã liệu mà chúng nhìn nhận đơn vị Mỗi đối tượng có tên riêng biệt tất tham chiếu đến đối tượng tiến hành qua tên Như vậy, đối tượng có khả nhận vào thơng báo, xử lý liệu (bên nó), gửi hay trả lời đến đối tượng khác hay đến mơi trường Các tính chất Đối tượng (object): Các liệu thị kết hợp vào đơn vị đầy đủ tạo nên đối tượng Đơn vị tương đương với chương trình đối tượng chia thành hai phận chính: phần phương thức (method) phần thuộc tính (attribute / Properties) Trong thực tế, phương thức đối tượng hàm thuộc tính biến, tham số hay nội đối tượng (hay nói cách khác tập hợp liệu nội tạo thành thuộc tính đối tượng) Các phương thức phương tiện để sử dụng đối tượng thuộc tính mơ tả đối tượng có tính chất Các phương thức thuộc tính thường gắn chặt với thực tế đặc tính sử dụng đối tượng Trong thực tế, đối tượng thường trừu tượng hóa qua việc định nghĩa lớp (class) Tập hợp giá trị có thuộc tính tạo nên trạng thái đối tượng Mỗi phương thức hay liệu nội với tính chất định nghĩa (bởi người lập trình) xem đặc tính riêng đối tượng Nếu khơng có lầm lẫn tập hợp đặc tính gọi chung đặc tính đối tượng Lập trình hướng đối tượng phương pháp lập trình có tính chất sau: GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ Tính trừu tượng (abstraction): Đây khả chương trình bỏ qua hay khơng ý đến số khía cạnh thơng tin mà trực tiếp làm việc lên, nghĩa có khả tập trung vào cốt lõi cần thiết Mỗi đối tượng phục vụ "động tử" hồn tất cơng việc cách nội bộ, báo cáo, thay đổi trạng thái liên lạc với đối tượng khác mà không cần cho biết làm cách đối tượng tiến hành thao tác Tính chất thường gọi trừu tượng liệu Tính trừu tượng thể qua việc đối tượng ban đầu có số đặc điểm chung cho nhiều đối tượng khác mở rộng thân đối tượng ban đầu khơng có biện pháp thi hành Tính trừu tượng thường xác định khái niệm gọi lớp trừu tượng hay lớp sở trừu tượng Tính đóng gói (encapsulation) che giấu thơng tin (information hiding): Tính chất không cho phép người sử dụng đối tượng thay đổi trạng thái nội đối tượng Chỉ có phương thức nội đối tượng cho phép thay đổi trạng thái Việc cho phép mơi trường bên ngồi tác động lên liệu nội đối tượng theo cách hoàn toàn tùy thuộc vào người viết mã Đây tính chất đảm bảo tồn vẹn đối tượng Tính đa hình (polymorphism): Thể thơng qua việc gửi thông điệp (message) Việc gửi thơng điệp so sánh việc gọi hàm bên đối tượng Các phương thức dùng trả lời cho thông điệp tùy theo đối tượng mà thơng điệp gửi tới có phản ứng khác Người lập trình định nghĩa đặc tính (chẳng hạn thơng qua tên phương thức) cho loạt đối tượng gần thi hành dùng tên gọi mà thi hành đối tượng tự động xảy tương ứng theo đặc tính đối tượng mà khơng bị nhầm lẫn Ví dụ định nghĩa hai đối tượng "hinh_vuong" "hinh_tron" có phương thức chung "chu_vi" Khi gọi phương thức đối tượng "hinh_vuong" tính theo cơng thức khác với đối tượng "hinh_tron" Tính kế thừa (inheritance): Đặc tính cho phép đối tượng có sẵn đặc tính mà đối tượng khác có thơng qua kế thừa Điều cho phép đối tượng chia sẻ hay mở rộng đặc tính sẵn có mà tiến hành định nghĩa lại Tuy nhiên, ngôn ngữ định hướng đối tượng có tính chất GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ CHƯƠNG 2: TỔNG QUAN HỆ THỐNG QUẢN LÍ ĐIỂM SINH VIÊN Tổng quan hệ thống 1.1 Hệ thống tổng quát Để xây dựng hệ thống thơng tin hồn chỉnh cần tr ải qua giai đoạn: - Khảo sát - Phân tích hệ thống - Thiết kế hệ thống - Kiểm thử - Cài đặt - Vận hành bảo trì Giai đoạn khảo sát giai đoạn quan trọng Và trình học tập thấy hệ thống quản lý ểm nhiều bất cập khó khăn Nhập tính tốn điểm Excel, Sinh viên chưa thể tự động xem theo dõi điểm suốt q trình theo học trường Đặc biệt gặp khó khăn trình tổng kết ểm thành tích học tập sinh viên vào dịp cuối năm học Với yêu cầu cấp thiết nhóm chúng tơi khắc phục khó khăn xây dựng hệ thống quản lí ểm sinh viên nhằm hỗ tr ợ cho q trình quản lí tốt hơn, tránh sai xót, thu ận ti ện trình quản lí điểm 1.2 Nhiệm vụ hệ thống Theo dõi tồn q trình học tập sinh viên suốt trình h ọc trường từ nhập học đến trường, đảm bảo không sai sót q trình nhập điểm in điểm Hệ thống giúp cho phòng đào t ạo theo dõi, đánh giá kết học tập sinh viên cách nhanh xác nh ất Nó làm giảm đáng kể công sức, giấy tờ, sổ sách lưu trư Ngoài việc cập nhật điểm sinh viên, hệ th ống có th ể tra cứu số thông tin cần thiết sinh viên ngày sinh, quê quán, ch ỗ hi ện tại… Hệ thống lưu trữ, xử lý kết học tập sinh viên theo quy ch ế trường Kiểm soát thống kê việc khen thưởng, xét học bổng, xét lưu ban, thi l ại, học lại sinh viên cách nhanh chóng xác Thơng qua cơng tác quản lý mà có hồ sơ cụ thể kết học tập rèn luyện sinh viên trường 1.3 Chức hệ thống Hệ thống quản lý điểm sinh viên bao gồm phận, hoạt động có mối liên hệ chặt chẽ GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ - Bộ phận quản lý đào tạo: Cập nhật mơn học, xây dựng chương trình đạo tạo tồn khóa - Bộ phận quản lý sinh viên: Bộ phận có nhiệm vụ quản lý h s sinh viên suốt trình học tập trường, đảm bảo cơng việc có liên quan đến sinh viên có khóa nhập học phận ti ến hành c ập nh ật sinh viên khóa mới, danh sách ngành học, khóa h ọc cho sinh viên, th ực hi ện vi ệc cập nhật để chuyển lớp, tách lớp, dừng học, học Đồng thời phận làm nhiệm vụ lưu hồ sơ sinh viên trường vào máy tính B ộ phận sử dụng PC có cài đặt hệ chương trình gọi Hồ sơ sinh viên (HSSV) trợ giúp việc cập nhật, thêm, xóa, sửa thơng tin sinh viên - Ban khảo thí: Cập nhật điểm mơn kết thúc môn h ọc, h ọc kỳ cập nhật có kiểm tra mơn học Cập nhật điểm rèn luyện sinh viên Tính điểm trung bình học tập kỳ, năm học Sau phận thống kê tồn kết học tập sinh viên theo h ọc kỳ, tồn khóa h ọc Đồng thời thống kê báo cáo danh sách sinh viên thi l ại, h ọc l ại, h ọc, h ọc bổng… dựa quy định phòng đào tạo ểm trung bình chung sinh viên Chuyển kết cho cán khác sinh viên Bộ phận có PC cài đặt hệ chương trình Nhập ểm trợ giúp vi ệc c ập nh ật ểm in phiếu điểm cho lớp cho sinh viên 1.4 Các biểu mẫu sử dụng hệ thống Danh sách sinh viên lớp: DANH SÁCH LỚP Trường đại học trần đại nghĩa Phòng đào tạo Khoa:…… Lớp:……… STT Mã SV Họ Tên Ngày sinh Giới tính Quê quán …… …… …… …… …… Chỗ Ghi …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… Danh sách môn học GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ DANH MÔN HỌC Trường đại học trần đại nghĩa Phòng đào tạo STT Mã mơn Tên học học …… …… …… …… môn Bộ môn Khoa: Lớp: Đvhp Ngành Chuyên đào tạo ngàn dt Học kỳ …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… Bảng điểm cá nhân Bộ quốc phòng NAM Trường đại học trần đại nghĩa CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT Độc lập-Tự do- Hạnh phúc BẢNG ĐIỂM CÁ NHÂN Họ tên: Ngày sinh: Giới tính: Quê quán: Lớp: Khóa: Chuyên ngành: Hệ đào tạo: STT Mã môn học Tên môn học Số ĐVHP Điểm kết …… …… …… …… …… …… …… …… …… …… …… …… tổng Danh sách học bổng DANH SÁCH HỌC BỔNG Trường đại học trần đại nghĩa Phòng đào tạo GVHD: ĐẶNG THẾ HÙNG Khoa: Năm học: QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ Hệ đt: Chuyên ngành: STT MSSV Họ tên Lớ p ĐTBC Ghi …… …… …… …… …… …… …… …… …… …… …… …… …… …… …… Mơ hình tiến trình nghiệp vụ 2.1 Các kí hiệu sử dụng mơ hình Dùng kí hiệu hình chữ nhật để mô tả chức hệ thống, tên c chức ghi bên Ví dụ như: phận quản lý ểm, b ộ ph ận qu ản lý sinh viên Dùng mũi tên hướng luồng liệu ghi mũi tên Dùng kí hiệu hình elip để miêu tả tác nhân bên ngồi hệ th ống, tên tác nhân ghi bên 2.2 Vẽ sơ đồ ERD hệ thống GVHD: ĐẶNG THẾ HÙNG QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ GVHD: ĐẶNG THẾ HÙNG 10 QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ // Đưa DataGridView dgrDiem.DataSource = ds; dgrDiem.DataMember = "SINHVIEN"; cmd.Dispose(); } private void cboLop_SelectedIndexChanged(object sender, EventArgs e) { //// Thực truy vấn //string select = "Select * From tblKET_QUA Where MaLop='"+cboLop Text +"'"; //SqlCommand cmd = new SqlCommand(select, conn); //// Tạo đối tượng DataSet //DataSet ds = new DataSet(); //// Tạo đối tượng điều hợp //SqlDataAdapter adapter = new SqlDataAdapter(); //adapter.SelectCommand = cmd; //// Fill liệu từ adapter vào DataSet //adapter.Fill(ds, "SINHVIEN"); } //// Đưa DataGridView //dgrDiem.DataSource = ds; //dgrDiem.DataMember = "SINHVIEN"; //cmd.Dispose(); private void textBox1_TextChanged(object sender, EventArgs e) { } private void button3_Click(object sender, EventArgs e) { if (MessageBox.Show("Bạn có chắn muốn xóa ?", "Thơng báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { // Thuc hien xoa du lieu string delete = "delete from tblKET_QUA where MaSV='" + txtMaSV.Text + "' and MaMon='" + cboMonHoc.Text + "' "; SqlCommand cmd = new SqlCommand(delete, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Xóa liệu thành cơng", "Thơng báo!"); // Trả tài nguyên cmd.Dispose(); //Load lai du lieu FillDataGridView_Diem(); } } private void dgrDiem_CellContentClick(object sender, DataGridViewCellEventArgs { txtMaSV.Text = dgrDiem.CurrentRow.Cells[0].Value.ToString(); txtHoTen.Text = dgrDiem.CurrentRow.Cells[1].Value.ToString(); cboLop.Text = dgrDiem.CurrentRow.Cells[2].Value.ToString(); GVHD: ĐẶNG THẾ HÙNG 36 QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ } cboMonHoc.Text = dgrDiem.CurrentRow.Cells[3].Value.ToString(); txtDiemTB.Text = dgrDiem.CurrentRow.Cells[4].Value.ToString(); txtDiemThi1.Text = dgrDiem.CurrentRow.Cells[5].Value.ToString(); txtDiemTK.Text = dgrDiem.CurrentRow.Cells[6].Value.ToString(); cboHanhKiem.Text = dgrDiem.CurrentRow.Cells[7].Value.ToString(); cboHocKi.Text = dgrDiem.CurrentRow.Cells[8].Value.ToString(); txtGhiChu.Text = dgrDiem.CurrentRow.Cells[9].Value.ToString(); private void button2_Click(object sender, EventArgs e) { //Kiem tra trung ten MonHoc va MASV //string select1 = "Select MaSV,TenMon from tblKET_QUA where TenMon=N'" + cboMonHoc.Text + "' "; //SqlCommand cmd1 = new SqlCommand(select1, conn); //SqlDataReader reader1 = cmd1.ExecuteReader(); //errorProvider1.Clear(); if (txtMaSV.Text == "") { errorProvider1.SetError(txtMaSV, "Mã sinh viên không để trống!"); } //else if (reader1.Read()) //{ // { // MessageBox.Show("Sinh viên nhập điểm môn: " + cboMonHoc.Text, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); // txtMaSV.Focus(); // } ////Tra tai nguyen //reader1.Dispose(); //cmd1.Dispose(); //} else { ////Tra tai nguyen //reader1.Dispose(); //cmd1.Dispose(); // Thực truy vấn string update = "Update tblKET_QUA Set HoTen=N'" + txtHoTen.Text + "',MaMon=N'" +cboMonHoc.Text + "',MaLop='" + cboLop.Text + "',DiemThiLan1='" + txtDiemThi1.Text + "',DiemTB='" +txtDiemTB.Text + "' ,DiemTongket='" + txtDiemTK.Text + "',HanhKiem=N'" + cboHanhKiem.Text + "',HocKi=N'" + cboHocKi.Text + "',GhiChu=N'" + txtGhiChu.Text + "' where MaSV='" + txtMaSV.Text + "' and MaMon=N'" + cboMonHoc.Text + "'"; SqlCommand cmd = new SqlCommand(update, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Cập nhật liệu thành công", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information); //Load lai du lieu FillDataGridView_Diem(); GVHD: ĐẶNG THẾ HÙNG 37 QUẢN LÍ ĐIỂM SINH VIÊN HỆ DÂN SỰ // Trả tài nguyên cmd.Dispose(); } } private void button4_Click(object sender, EventArgs e) { Application.Exit(); } private void txtDiemTK_KeyPress(object sender, KeyPressEventArgs e) { } private void txtDiemThi2_TextChanged(object sender, EventArgs e) { } private void txtDiemThi1_TextChanged(object sender, EventArgs e ) { double DIEMTHI, DIEMTB, DIEMTK; if (txtDiemThi1.Text == "") { this.txtDiemThi1.Text = "0"; DIEMTB = double.Parse(this.txtDiemTB.Text); //Tính điểm TK DIEMTK = (0.3 * DIEMTB + 0.7 * 0); this.txtDiemTK.Text = Convert.ToString(DIEMTK); } else if (txtDiemTB.Text == "") { this.txtDiemTB.Text = "0"; DIEMTHI = double.Parse(this.txtDiemThi1.Text); } //Tính điểm TK DIEMTK = (0.3 * + 0.7 * DIEMTHI); this.txtDiemTK.Text = Convert.ToString(DIEMTK); else { DIEMTHI = double.Parse(this.txtDiemThi1.Text); DIEMTB = double.Parse(this.txtDiemTB.Text); //Tính điểm TK DIEMTK = (0.3 * DIEMTB + 0.7 * DIEMTHI); this.txtDiemTK.Text = Convert.ToString(DIEMTK); } DIEMTK = double.Parse(this.txtDiemTK.Text); if (DIEMTK