Qua môn học này sinh viên cần biết sử dụng tài liệu dự án được xây dựng sẵn để xây dựng ra một phần mềm – đó là phần mềm Quản lý đào tạo cho trung tâm đào tạo tin học ngắn hạn theo chuyê
Trang 1[DOCUMENT TITLE]
[Document subtitle]
Trang 2
MỤC LỤC
1 Giới thiệu dự án 4
1.1 Giới thiệu công ty LapTrinhCity 4
1.2 Yêu cầu của công ty 4
1.3 Lập kế hoạch dự án 4
2 Phân tích yêu cầu khách hàng 4
2.1 Sơ đồ Use Case 4
2.2 Đặc tả yêu cầu hệ thống (SRS) 4
2.2.1 Quản lý nhân viên 5
2.2.2 Quản lý chuyên đề 5
2.2.3 Quản lý người học 5
2.2.4 Quản lý khóa học 5
2.2.5 Quản lý học viên 5
2.2.6 Quản lý tổng hợp – thống kê 5
2.2.7 Đăng nhập 5
2.2.8 Đổi mật khẩu 5
2.3 Sơ đồ triển khai và yêu cầu hệ thống 5
2.3.1 Sơ đồ triển khai 6
2.3.2 Yêu cầu hệ thống 6
3 Thiết kế ứng dụng 6
3.1 Mô hình công nghệ ứng dụng 6
3.2 Thực thể 6
3.2.1 Sơ đồ quan hệ thực thể (ERD) 6
3.2.2 Chi tiết thực thể 7
3.3 Giao diện 8
3.3.1 Sơ đồ tổ chức giao diện 8
3.3.2 Giao diện cửa sổ chính 8
3.3.3 Giao diện chức năng 9
Trang 33.3.4 Các giao diện hỗ trợ khác 11
4 Thực hiện dự án 13
4.1 Tạo giao diện với Swing 13
4.1.1 Cửa sổ chính (EduSysJFrame) 13
4.1.2 Các cửa sổ quản lý 15
4.1.3 Cửa sổ tổng hợp thống kê (ThongKeJDialog) 16
4.1.4 Các giao diện hỗ trợ khác 16
4.2 Tạo CSDL với SQL Server 17
4.2.1 Sơ đồ quan hệ 17
4.2.2 Chi tiết các bảng 17
4.2.3 Thủ tục lưu 18
4.3 Lập trình CSDL 19
4.3.1 Mô hình tổ chức lập trình CSDL 19
4.3.2 JdbcHelper (XJdbc) 19
4.3.3 Entity Class và DAO 20
4.4 Thư viện tiện ích 23
4.5 Lập trình nghiệp vụ 23
4.5.1 Cửa sổ chính EduSysJFrame 23
4.5.2 Các cửa sổ hỗ trợ tổ chức 23
4.5.3 Các cửa sổ chức năng quản lý 24
4.5.4 Cửa sổ chức năng tổng hợp - thống kê 26
5 Kiểm thử phần mềm và sửa lỗi 26
5.1 DangNhapJDialog 26
5.2 DoiMatKhauJDialog 26
5.3 NhanVienJDialog 26
5.4 ChuyenDeJDialog 26
5.5 NguoiHocJDialog 26
5.6 KhoaHocJDialog 26
5.7 HocVienJDialog 27
Trang 45.8 ThongKeJDialog 27
6 Đóng gói và triển khai 27
6.1 Sản phẩm phần mềm 27
6.2 Hướng dẫn cài đặt 27
7 KẾT LUẬN 27
7.1 Khó khăn 27
7.2 Thuận lợi 27
Trang 5LỜI NÓI ĐẦU
Dự án mẫu là một môn học trong chương trình đào tạo CNTT của hệ cao đẳng thực hành FPT Polytechnic
Mục tiêu của môn học này là cung cấp cho sinh viên một cái nhìn tổng quan về việc làm dự án phần mềm theo qui trình công nghiệp sát với thực tế hiện nay
Qua môn học này sinh viên cần biết sử dụng tài liệu dự án được xây dựng sẵn để xây dựng ra một phần mềm – đó là phần mềm Quản lý đào tạo cho trung tâm đào
tạo tin học ngắn hạn theo chuyên đề LapTrinhCity.
Trong chương trình đào tạo theo tiêu chuẩn CDIO sinh viên cần được huấn luyện
các kỹ năng C, D, I, O (Conceiving — Designing — Implementing — Operating).
Dự án này rèn luyện cho sinh viên các kỹ năng I và O đồng thời làm nền tảng cho sinh viên rèn luyện các kỹ năng còn lại C và D qua các môn học tiếp sau trong đó đặc biệt là dự án 1 và dự án 2 và cả thực tập tốt nghiệp
Với phương pháp đào tạo đảo ngược như vậy sinh viên nghề không những có đủ
kỹ năng thực hiện mà còn được rèn luyện thêm kỹ phân tích và thiết kế nhằm giúp sinh viên phát triển sự nghiệp lâu dài học học tiếp lên các cấp độ cao hơn
Kết thúc môn học này, sinh viên có khả năng:
- Vận dụng được kiến thức lập trình JAVA và CSDL để xây dựng được một phần mềm hoàn chỉnh
- Tổ chức được mã nguồn dự án phần mềm một cách có khoa học, gần gũi với thực tế
- Thực hiện được dự án theo đúng quy trình dự án thực tế
- Đọc và viết được báo cáo về tài liệu dự án
- Chuẩn bị cho việc thực hiện các môn dự án 1, dự án 2 sau này
Trang 61 GIỚI THIỆU DỰ ÁN
1.1 GIỚI THIỆU CÔNG TY LAPTRINHCITY
- Trung tâm đào tạo tin học ngắn hạn LapTrinhCity đang đào tạo các khóa tin học ngắn hạn theo chuyên đề như Photoshop, Java, Web… Việc quản lý khóa học, học viên, bảng điểm và doanh thu của công ty đang thực hiện thông qua excel đang gặp nhiều bất lợi khi số lượng người học ngày càng tăng:
- Dễ sai sót khi tính toán
- Khó quản lý,tính bảo mật thấp
- Dễ nhầm lẫn đối tượng khi khối lượng file lớn
- Khó tra cứu hoặc sửa đổi dữ liệu
1.2 YÊU CẦU CỦA CÔNG TY
- Hiện Trung tâm đang gặp rất nhiều khó khăn khi số lượng người học ngày một nhiều, dữ liệu ngày càng lớn nên việc quản lý excel gặp rất nhiều khó khăn, dễ sai sót mà không bảo mật
- LapTrinhCity mong muốn xây dựng một phần mềm để giải quyết khó khăn trên
1.3 LẬP KẾ HOẠCH DỰ ÁN
TT H ẠNG MỤC T HỜI G IAN
Ư ỚC T ÍNH
B ẮT ĐẦU K ẾT THÚC K ẾT QUẢ
1.1-1.2 Phân tích yêu cầu khách
hàng
Hoàn thành
2.1 Vẽ sơ đồ use case tổng Hoàn thành 2.2 Vẽ sơ đồ use case chi tiết Hoàn thành
2 Thiết kế ứng dụng Hoàn thành 2.3 Đặc tả yêu cầu hệ thống Hoàn thành
…
3 Thực hiện dự án
3.1 Tạo giao diện
…
4 Kiểm thử
4.1 Xây dựng kịch bảng kiểm
thử
…
5 Đóng gói & triển khai
5.1 Đóng gói sản phẩm
…
Trang 72 PHÂN TÍCH YÊU CẦU KHÁCH HÀNG 2.1 SƠ ĐỒ USE CASE
2.2 2.1 SƠ ĐỒ USE CASE
Hình 2.1: Sơ đồ use case tổng
Trang 8Hình 2.2: Sơ đồ use case chi tiết của Nhân viên
Hình 2.3: Sơ đồ use case chi tiết quản lý chuyên đề
Trang 9Hình 2.4: Sơ đồ use case chi tiết quản lý người học
Hình 2.5: Sơ đồ use case chi tiết quản lý khóa học
Trang 10Hình 2.5: Sơ đồ use case chi tiết quản lý học viên
Hình 2.5: Sơ đồ use case chi tiết tổng hợp – thống kê
2.3 ĐẶC TẢ YÊU CẦU HỆ THỐNG (SRS)
2.3.1 QUẢN LÝ NHÂN VIÊN
M Ô TẢ CHỨC NĂNG :
Chức năng quản lý nhân viên được sử dụng để quản lý thông tin nhân viên Yêu cầu của chức năng này là liệt kê danh sách nhân viên, xem thông tin chi
Trang 11tiết của mỗi nhân viên, thêm nhân viên mới, cập nhật thông tin hoặc xóa nhân viên đã tồn tại
D Ữ LIỆU LIÊN QUAN :
Thông tin của mỗi nhân viên gồm: mã nhân viên, họ và tên, mật khẩu đăng nhập, vai trò của nhân viên (gồm trưởng phòng và nhân viên bình thường)
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên nào cũng có thể sử dụng chức năng này, ngoại trừ xóa thì chỉ có trưởng phòng mới sử dụng được
2.3.2 QUẢN LÝ CHUYÊN ĐỀ
M Ô TẢ CHỨC NĂNG :
Chức năng quản lý chuyên đề được sử dụng để quản lý thông tin chuyên đề Yêu cầu của chức năng này là liệt kê danh sách từng chuyên đề, xem thông tin chi tiết của mỗi chuyên đề, thêm chuyên đề mới, cập nhật thông tin chuyên đề hoặc xóa chuyên đề
D Ữ LIỆU LIÊN QUAN :
Thông tin của mỗi chuyên đề gồm: mã chuyên đề, tên chuyên đề, học phí, thời lượng(theo giờ), ảnh logo, mô tả của chuyên đề
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên nào cũng có thể sử dụng chức năng này, ngoại trừ xóa thì chỉ có trưởng phòng mới sử dụng được
2.3.3 QUẢN LÝ NGƯỜI HỌC
M Ô TẢ CHỨC NĂNG :
Chức năng quản lý người học được sử dụng để quản lý thông tin người học Yêu cầu của chức năng này là liệt kê danh sách người học, xem thông tin chi tiết người học, thêm người học mới, tìm kiếm người học theo mã, cập nhật thông tin người học hoặc xóa người học khỏi danh sách
D Ữ LIỆU LIÊN QUAN :
Thông tin của mỗi người học gồm: mã người học, họ và tên, ngày sinh, giới tính, số điện thoại liên hệ, email, ghi chú
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên nào cũng có thể sử dụng chức năng này, ngoại trừ xóa thì chỉ có trưởng phòng mới sử dụng được
2.3.4 QUẢN LÝ KHÓA HỌC
M Ô TẢ CHỨC NĂNG :
Trang 12Chức năng quản lý khóa học được sử dụng để quản lý thông tin từng khóa học Yêu cầu của chức năng này là liệt kê danh sách từng khóa học, xem thông tin chi tiết từng khóa, thêm khóa học mới, cập nhật thông tin khóa học hoặc xóa khóa học khỏi danh sách
D Ữ LIỆU LIÊN QUAN :
Thông tin của mỗi khóa học gồm: mã khóa học, mã chuyên đề, học phí, thời lượng(theo giờ), ngày khai giảng, ghi chú(thông tin cần thiết)
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên nào cũng có thể sử dụng chức năng này, ngoại trừ xóa thì chỉ có trưởng phòng mới sử dụng được
1.1.1 QUẢN LÝ HỌC VIÊN
M Ô TẢ CHỨC NĂNG :
Chức năng quản lý khóa học được sử dụng để quản lý thông tin từng học viên Yêu cầu của chức năng này là liệt kê danh sách từng học viên, xem thông tin chi tiết từng học viên, thêm người học vào khóa học để thành học viên, cập nhật điểm cho học viên, xóa học viên khỏi khóa học và tìm người học theo mã
D Ữ LIỆU LIÊN QUAN :
Thông tin của mỗi học viên gồm: mã học viên, mã khóa học, mã người học, điểm trung bình
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên nào cũng có thể sử dụng chức năng này, ngoại trừ xóa thì chỉ có trưởng phòng mới sử dụng được
1.1.2 QUẢN LÝ TỔNG HỢP – THỐNG KÊ
M Ô TẢ CHỨC NĂNG :
Chức năng quản lý tổng hợp thống kê được sử dụng để thống kê bảng điểm của học viên từng khóa, thống kê người học, điểm từng chuyên đề và doanh thu theo từng năm học Yêu cầu của chức năng này là liệt kê bảng điểm, người học, điểm chuyên đề và doanh thu
D Ữ LIỆU LIÊN QUAN :
Chức năng tổng hợp thống kê dữ liệu bao gồm:
- Bảng điểm theo khóa học có cấu trúc: mã người học, họ và tên, điểm
- Thống kê số người học từng năm có cấu trúc: năm, số học viên, ngày đăng ký sớm nhất, ngày đăng ký muộn nhất
- Tổng hợp điểm từng chuyên đề: chuyên đề, số học viên, điểm cao nhất, điểm thấp nhất, điểm trung bình
Trang 13- Doanh thu từng chuyên đề theo năm có cấu trúc: chuyên đề, số khóa, số học viên, doanh thu, học phí thấp nhất, học phí cao nhất, học phí trung bình
Đ ỐI TƯỢNG SỬ DỤNG :
Sau khi đăng nhập thì nhân viên không được phép sử dụng chức năng này, ngoại trừ trưởng phòng mới sử dụng được
1.1.3 ĐĂNG NHẬP
M Ô TẢ CHỨC NĂNG :
Chức năng đăng nhập được sử dụng để đăng nhập vào hệ thống Yêu cầu của chức năng này là phải có tài khoản và mật khẩu của nhân viên để đăng nhập vào hệ thống EDUSYS
D Ữ LIỆU LIÊN QUAN :
Thông tin đăng nhập gồm: mã nhân viên, mật khẩu
Đ ỐI TƯỢNG SỬ DỤNG :
Là nhân viên hoặc trưởng phòng sau khi đã đăng kí tài khoản thành công
1.1.4 ĐỔI MẬT KHẨU
M Ô TẢ CHỨC NĂNG :
Chức năng đổi mật được sử dụng để bảo mật thông tin tài khoản Yêu cầu của chức năng này là đổi mật khẩu
D Ữ LIỆU LIÊN QUAN :
Thông tin đổi mật khẩu gồm: mã nhân viên, mật khẩu
Đ ỐI TƯỢNG SỬ DỤNG :
Là nhân viên hoặc trưởng phòng đều sử dụng được
2.4 SƠ ĐỒ TRIỂN KHAI VÀ YÊU CẦU HỆ THỐNG
Ứng dụng phần mềm được xây dựng để phục vụ cho nhiều người dùng những cở
sở dữ liệu thì lưu trữ tập trung
3 THIẾT KẾ ỨNG DỤNG
Dựa vào tài liệu đã phân tích ở mục 2 để phác thảo:
o Mô hình công nghệ
o Giao diện
o Thực thể
Trang 143.1 MÔ HÌNH CÔNG NGHỆ ỨNG DỤNG
Phác thảo mô hình công nghệ ứng dụng của hệ thống phần mềm Giải thích
rõ các thành phần trong mô hình
3.2 THỰC THỂ
Căn cứ vào SRS để thiết kế các thực thể Cần phải hoàn thiện 2 phần theo
yêu cầu sau đây.
+ Yêu cầu chức năng nghiệp vụ
Quản lý người đăng ký học
Quản lý các chuyên đề
Quản lý các khóa học được tạo ra từ các chuyên đề
Quản lý học viên của các khóa học
Tổng hợp bảng điểm của các khóa học
Thống kê doanh thu, số lượng người học từng chuyên đề theo năm
Tổng hợp số lượng người học đăng ký theo tháng
+Yêu cầu về bảo mật
Tất cả mọi thành viên phải đăng nhập mới sử dụng được phần mềm
Trưởng phòng đào tạo được phép thực hiện tất cả các chức năng
Nhân viên phòng đào tạo không được phép xóa dữ liệu và cũng không được xem thông tin về doanh thu
+ Yêu cầu về môi trường công nghệ
Ứng dụng phải được thực với công nghệ Swing và JDBC chạy trên mọi hệ điều hành với môi trường JDK tối thiểu 1.8
Hệ quản trị CSDL SQL Server 2008 trở lên
4 THIẾT KẾ ỨNG DỤNG
Dựa vào tài liệu đã phân tích ở mục 2 để phác thảo:
o Mô hình công nghệ
o Giao diện
o Thực thể
Trang 154.1 MÔ HÌNH CÔNG NGHỆ ỨNG DỤNG
Mô hình đăng nhập:
4.2 THỰC THỂ
Căn cứ vào SRS để thiết kế các thực thể Cần phải hoàn thiện 2 phần theo
yêu cầu sau đây.
4.2.1 SƠ ĐỒ QUAN HỆ THỰC THỂ (ERD)
Vẽ sơ đồ thể hiện mối quan hệ giữa các thực thể Nên chia thành 2 mức
(tổng quát và chi tiết) để dễ đọc, dễ hiểu.