Professional Documents
Culture Documents
Quan Ly Dang Ky Ho C Tru C Tuye N 6413
Quan Ly Dang Ky Ho C Tru C Tuye N 6413
BÀI TIỂU LUẬN MÔN: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG VỚI UML
MỤC LỤC
1. Mô tả bài toán......................................................................................................1
V. Tìm lớp..................................................................................................................21
1. Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng.......................21
3. Biểu đồ lớp cho ca sử dụng Duy trì thông tin giảng viên..................................47
4. Biểu đồ lớp cho ca sử dụng Duy trì thông tin Sinh viên....................................48
5. Biểu đồ lớp cho ca sử dụng Duy trì thông tin môn học.....................................49
1. Biểu đồ thành phần cho ca sử dụng Chọn môn học để giảng dạy.....................51
3. Biểu đồ thành phần cho các ca sử dụng Duy trì thông tin giảng viên, sinh viên
và môn học.............................................................................................................52
IX. Biểu đồ triển khai của hệ thống Đăng kí môn học theo tín chỉ...........................53
X. Thiết kế cơ sở dữ liệu............................................................................................53
1. Trang chủ...........................................................................................................57
-1-
Ket-noi.com kho tài liệu miễn phí
gửi thông qua e-mail từ hệ thống sau khi hệ thống đã kiểm tra đầy đủ thông
tin.
Sinh viên có thể thực hiện việc đăng kí học dễ dàng và thuận tiện. Thay vì học
viên phải đến và trực tiếp tìm hiểu thông tin về các học phần mình định học,
thông qua hệ thống này, sinh viên chỉ cần xem thông tin về các học phần, sau
đó lựa chọn học phần mình định học và điền đầy đủ thông tin vào form đăng
ký và sau đó chờ kết quả phẩn hồi từ hệ thống.
d. Khắc phục các nhược điểm của hệ thống cũ, hỗ trợ các chiến lược phát triển lâu
dài, đáp ứng được các ưu tiên, các ràng buộc quan trọng của hệ thống.
Hệ thống đăng ký học online giới thiệu và cung cấp thông tin đầy đủ, chi tiết
về các học phần cho người học tốt hơn so với hệ thống đăng ký học trực tiếp. Hệ
thống này giúp ích cho việc quảng bá, giới thiệu tới đông đảo người học về thông tin
các học phần của cơ sở giáo dục, đào tạo. Chính việc cung cấp thông tin đầy đủ, chi
tiết, tìm hiểu thông tin nhanh chóng, dễ dàng, tiện lợi và những tiện ích do hệ thống
mang lại sẽ giúp cho người học hài lòng, thoải mái, đó chính là những giá trị phi vật
thể mà hệ thống đem lại.
Tuy nhiên, bên cạnh các giá trị mà hệ thống mang lại, một vấn đề đặt ra là cần
phải có cơ chế xác nhận thông tin đã đăng ký của sinh viên để đảm bảo các thông tin
đó là chính xác. Việc này có thể thực hiện bằng cách kiểm tra hồ sơ sau (hậu kiểm).
-2-
Ket-noi.com kho tài liệu miễn phí
-3-
Ket-noi.com kho tài liệu miễn phí
Tác nhân Sinh viên: sử dụng hệ thống để đăng kí các môn học.
Tác nhân CB tuyển sinh: Có nhiệm vụ duy trì thông tin giảng viên, thông tin
sinh viên, thông tin môn học và lập bản giới thiệu các môn học.
-4-
Ket-noi.com kho tài liệu miễn phí
Vẽ biểu đồ ca sử dụng
§ ¨ ng ki m«n häc
Sinh vien HÖthu häc
phÝ
§ ¨ ng nhËp hÖthèng
Gi¶ng viª n
Chän m«n häc ®Ógi¶ng
d¹ y
HÖqu¶n lý
Duy tr×th«ng tin gi¶ng viª n TKB
Tác nhân nhập tài khoản và mật khẩu đăng nhập của mình.
Hệ thống xác nhận tài khoản và mật khẩu đăng nhập có hợp lệ không, nếu
không hợp lệ thì thực hiện luồng A1.
Hệ thống ghi lại quá trình đăng nhập.
Các luồng rẽ nhánh
Luồng A1: Nhập sai tài khoản/mật khẩu đăng nhập
- Hệ thống hiển thị một thông báo lỗi.
- Người sử dụng có thể chọn hoặc là đăng nhập lại hoặc là huỷ bỏ đăng nhập, khi
đó ca sử dụng kết thúc .
c. Tiền điều kiện
Không
d. Hậu điều kiện
Nếu việc đăng nhập thành công, người sử dụng sẽ đăng nhập được vào hệ
thống.
-6-
Ket-noi.com kho tài liệu miễn phí
- Thêm
- Xoá
- Xem
- In
- Thoát
Hệ thống yêu cầu sinh viên lựa chọn chức năng mà họ muốn thực hiện.
- Nếu Sinh viên lựa chọn “Thêm một môn học” thì luồng sự kiện con Thêm
sẽ được thực hiện.
- Nếu Sinh viên lựa chọn “Xoá một lớp giảng đã đăng kí theo học” thì luồng
sự kiện con Xoá sẽ được thực hiện.
- Nếu Sinh viên chọn “Xem lịch học” thì luồng sự kiện con Xem sẽ được thực
hiện.
- Nếu Sinh viên chọn “In lịch học” thì luồng sự kiện con In sẽ được thực hiện.
Thêm
- Nếu hết hạn đăng kí, thực hiện luồng A2.
- Hệ thống hiển thị một danh sách các môn học có trong học kì đó để Sinh
viên lựa chọn.
- Sinh viên chọn một môn học. Nếu việc lựa chọn của sinh viên không thoả
mãn điều kiện tiên quyết hoặc là môn học đó đã đủ số lượng Sinh viên đăng kí
thì thực hiện luồng A1.
- Hệ thống hiển thị các lớp giảng sẽ tổ chức cho môn học đó.
- Sinh viên chọn một lớp giảng và xác nhận. Nếu Sinh viên chọn Huỷ (không
đăng kí nữa), ca sử dụng bắt đầu lại.
- Hệ thống sẽ kết nối Sinh viên với lớp giảng đó.
Xoá lớp giảng đã đăng kí học
- Hệ thống hiển thị danh sách các lớp giảng mà Sinh viên đã đăng kí theo học.
- Sinh viên lựa chọn một lớp giảng và xác nhận xoá. Nếu sinh viên chọn Huỷ
(không xoá nữa), ca sử dụng bắt đầu lại.
- Hệ thống xoá bỏ kết nối giữa Sinh viên và lớp giảng đó.
Xem lịch học
-7-
Ket-noi.com kho tài liệu miễn phí
- Hệ thống hiển thị danh sách các lớp giảng mà Sinh viên đã đăng kí theo học.
- Sinh viên lựa chọn một lớp giảng.
- Hệ thống sẽ hiển thị lịch của lớp giảng đó gồm các thông tin sau: tên môn
học, mã môn học, mã số lớp giảng, các ngày lên lớp trong tuần, thời gian, địa
điểm.
In lịch học
- Hệ thống hiển thị danh sách các lớp giảng mà Sinh viên đã đăng kí theo học.
- Sinh viên lựa chọn một lớp giảng và chọn In.
- Hệ thống sẽ in lịch học của lớp giảng đó. Nếu không in được lịch học, thực
hiện luồng A3.
Các luồng rẽ nhánh
Luồng A1: Môn học mà Sinh viên đăng kí không thoả mãn các điều kiện tiên
quyết, hoặc là môn học đó đã đủ số lượng sinh viên đăng kí.
- Hệ thống hiển thị thông báo lỗi.
- Sinh viên có thể lựa chọn một môn học khác và đăng kí lại hoặc là thoát
khỏi ca sử dụng này.
Luồng A2: Hết hạn đăng kí.
- Hệ thống hiển thị thông báo lỗi.
- Ca sử dụng kết thúc.
Luồng A3: Lịch học không in được.
- Hệ thống hiển thị thông báo cho người dùng.
- Ca sử dụng bắt đầu lại.
c. Tiền điều kiện
Sinh viên phải đăng nhập thành công vào hệ thống.
d. Hậu điều kiện
Nếu ca sử dụng được thực hiện thành công thì danh sách các môn học mà Sinh
viên đã đăng kí sẽ được tạo ra. Sinh viên có thể thay đổi hoặc xóa những môn học đã
đăng kí, trong trường hợp khác hệ thống ở trong trạng thái không thay đổi.
-8-
Ket-noi.com kho tài liệu miễn phí
-9-
Ket-noi.com kho tài liệu miễn phí
- Hệ thống hiển thị một danh sách các môn học có trong kì đó để Giảng viên
lựa chọn. Nếu Giảng viên không lựa chọn được môn giảng dạy, thực hiện
luồng A1.
- Giảng viên chọn một môn mà mình có thể giảng dạy và xác nhận việc lựa
chọn. Nếu Giảng viên lựa chọn Huỷ, ca sử dụng bắt đầu lại.
- Hệ thống hiển thị các lớp giảng đối với môn học đã chọn.
- Giảng viên chọn một lớp giảng.
- Hệ thống sẽ tạo kết nối giữa Giảng viên và lớp giảng đó.
Xoá một lớp giảng
- Hệ thống hiển thị danh sách các lớp giảng mà Giảng viên đã đăng kí.
- Giảng viên chọn một lớp giảng và xác nhận xoá. Nếu giảng viên chọn Huỷ,
ca sử dụng bắt đầu lại.
- Hệ thống sẽ huỷ bỏ liên kết giữa giảng viên và lớp giảng đó.
Xem lịch giảng dạy
- Hệ thống hiển thị danh sách các lớp giảng mà Giảng viên đã đăng kí.
- Giảng viên chọn một lớp giảng.
- Hệ thống sẽ hiển thị lịch giảng dạy của lớp giảng đó gồm các thông tin sau:
tên môn học, mã môn học, mã số lớp giảng, các ngày lên lớp trong tuần, thời
gian, địa điểm.
In lịch giảng dạy
- Hệ thống hiển thị danh sách các lớp giảng mà Giảng viên đã đăng kí.
- Giảng viên chọn một lớp giảng.
- Hệ thống sẽ in lịch giảng dạy của Giảng viên. Nếu không in được lịch giảng
dạy, thực hiện luồng A2.
Các luồng rẽ nhánh:
Luồng A1: Giảng viên không lựa chọn được môn giảng dạy.
- Giảng viên chọn Thoat.
- Ca sử dụng kết thúc.
Luồng A2: Lịch giảng dạy không in được.
- Hệ thống hiển thị thông báo cho người dùng.
- Ca sử dụng bắt đầu lại.
- 10 -
Ket-noi.com kho tài liệu miễn phí
- 11 -
Ket-noi.com kho tài liệu miễn phí
Hệ thống yêu cầu CB tuyển sinh nhập thông tin giảng viên, bao gôm:
- Họ tên
- Ngày sinh
- Giới tính
- Khoa
- Nhóm ngành giảng dạy
- Số điện thoại
- Email
CB tuyển sinh nhập thông tin được yêu cầu.
Hệ thống tạo ra mã số tự động (duy nhất) và gán cho giảng viên. Trong đó
mã giảng viên được qui định như sau:
- Mã Giảng viên có độ dài tối đa 7 kí tự:
- 2 kí tự đầu qui định mã khoa
- 3 kí tự tiếp theo qui định mã nhóm ngành
- 2 kí tự cuối qui định số thứ tự của giảng viên trong nhóm ngành đó.
Giảng viên được thêm vào hệ thống.
Hệ thống cung cấp cho CB tuyển sinh mã số mới của giảng viên.
Sửa đổi thông tin giảng viên
Hệ thống yêu cầu CB tuyển sinh nhập mã số giảng viên.
CB tuyển sinh nhập vào mã số giảng viên.
Hệ thống kiểm tra mã số giảng viên vừa nhập có tồn tại hay không? Nếu
không tồn tại thì thực hiện luồng A1.
Hệ thống hiển thị thông tin về giảng viên có mã số vừa nhập.
CB tuyển sinh sửa những thông tin cần thiết về giảng viên và xác nhận việc
sửa đổi.
Hệ thống cập nhật những thay đổi vừa được thực hiện.
Xoá một giảng viên
Hệ thống yêu cầu CB tuyển sinh nhập mã số giảng viên.
CB tuyển sinh nhập vào mã số giảng viên.
Hệ thống kiểm tra mã số giảng viên vừa nhập có tồn tại hay không? Nếu
- 12 -
Ket-noi.com kho tài liệu miễn phí
- 13 -
Ket-noi.com kho tài liệu miễn phí
- Thêm
- Sửa
- Xoá
Hệ thống yêu cầu CB tuyển sinh chọn công việc mà họ muốn thực hiện.
Nếu CB tuyển sinh chọn “Thêm một sinh viên”, luồng sự kiện con Thêm một
sinh viên sẽ được thực hiện.
Nếu CB tuyển sinh chọn “Sửa thông tin sinh viên”, luồng sự kiện con Sửa
thông tin sinh viên sẽ được thực hiện.
Nếu CB tuyển sinh chọn “Xoá một sinh viên”, luồng sự kiện con Xoá một
sinh viên sẽ được thực hiện.
Thêm một sinh viên
Hệ thống yêu cầu CB tuyển sinh nhập thông tin sinh viên, bao gôm:
- Họ tên
- Ngày sinh
- Giới tính
- Khoa
- Khoá học
- Ngành học
- Số điện thoại
- Email
CB tuyển sinh nhập thông tin được yêu cầu.
Hệ thống tạo ra mã số tự động (duy nhất) và gán cho sinh viên, trong đó mã
số Sinh viên được qui định như sau:
- Độ dài tối đa 10 kí tự
- 2 kí tiếp theo qui định khoá Sinh viên đó nhập học
- 2 kí tự tiếp theo qui định khoa quản lý Sinh viên đó
- 3 kí tự tiếp theo qui định ngành học
- 3 kí tự tiếp theo qui định số thứ tự của Sinh viên trong ngành học đó.
Sinh viên được thêm vào hệ thống.
Hệ thống cung cấp cho CB tuyển sinh mã số mới của sinh viên.
- 14 -
Ket-noi.com kho tài liệu miễn phí
thêm vào, sửa đổi, hay xoá khỏi hệ thống. Trong các trường hợp khác, hệ thống ở
trong trạng thái chưa thay đổi.
- 16 -
Ket-noi.com kho tài liệu miễn phí
- 17 -
Ket-noi.com kho tài liệu miễn phí
- 18 -
Ket-noi.com kho tài liệu miễn phí
V. Tìm lớp
1. Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng
Dựa vào các khái niệm của lĩnh vực ứng dụng và dựa văn bản mô tả bài toán, ta
xác định được các lớp thực thể như sau:
- Lớp Tài khoản (TaiKhoan) gồm có các thông tin sau:
Tài khoản đăng nhập (taiKhoanDN)
Mật khẩu (matKhau)
- Lớp Giảng viên (GiangVien) gồm có các thông tin:
Mã giảng viên (maGV): Là tổ hợp giá trị của các thuộc tính sau: maKhoa,
maNganh, maNN, stt_GV.
Họ tên giảng viên (tenGv)
Ngày sinh (ngaySinh)
Giới tính (gioiTinh)
Số điện thoại (soDT)
- 20 -
Ket-noi.com kho tài liệu miễn phí
Email (email)
- Lớp Sinh viên (SinhVien) gồm có các thông tin sau:
Mã sinh viên (maSV): Là tổ hợp giá trị của các thuộc tính sau: maKhoaHoc,
maKhoa, maNganh, stt_SV.
Họ tên sinh viên (tenSV)
Ngày sinh (ngaySinh)
Giới tính (gioiTinh)
Số điện thoại (soDT)
Email (email)
- Lớp Môn học (MonHoc) gồm có các thông tin sau:
Mã môn học (maMH)
Tên môn học (tenMH)
Số tín chỉ (soTC)
Loại môn học (loaiMH)
Học kỳ (hocKy)
- Lớp Lớp giảng (LopGiang) gồm có các thông tin sau:
Mã lớp (maLop): ghi mã lớp học.
Lịch (lich): ghi ngày học, thời gian học, thời lượng học.
Địa điểm (diaDiem): ghi địa điểm học.
- Lớp Khoa gồm có các thông tin sau:
Mã khoa (maKhoa)
Tên khoa (tenKhoa)
- Lớp Ngành (Nganh) gồm có các thông tin sau:
Mã ngành (maNganh)
Tên ngành (tenNganh)
- Lớp Nhóm ngành (NhomNganh) gồm có các thông tin sau:
Mã nhóm ngành (maNN)
Tên nhóm ngành (tenNN)
Gán trách nhiệm cho các lớp vừa tìm được
Lớp Giảng viên (GiangVien)
- 21 -
Ket-noi.com kho tài liệu miễn phí
Giảng viên là người đăng ký các lớp giảng để giảng dạy trước khi kì học bắt
đầu.
Cung cấp các thông tin cần thiết để đăng kí các môn giảng dạy.
Cung cấp thông tin cho CB tuyển sinh để quản lý thông tin giảng viên.
Lớp Sinh viên (SinhVien)
Sinh viên là người được đăng ký theo học các lớp giảng trước khi kì học bắt
đầu.
Cung cấp các thông tin cần thiết để đăng kí các môn học và tính học phí.
Cung cấp thông tin cho CB tuyển sinh để quản lý thông tin Sinh viên.
Lớp Môn học (MonHoc)
Cung cấp thông tin về các môn học để Sinh viên và Giảng viên đăng kí
Cung cấp thông tin cho CB tuyển sinh để quản lý thông tin môn học và để lập
bản giới thiệu cho các môn học.
Lớp Lớp giảng (LopGiang)
Cung cấp các thông tin về các lớp giảng để Giảng viên và Sinh viên đăng kí.
Lớp Tài khoản (TaiKhoan)
Chứa thông tin tài khoản đăng nhập của người sử dụng.
- 22 -
Ket-noi.com kho tài liệu miễn phí
Lớp W_SV_Them/Xoa: Là giao diện phụ tương ứng với việc thêm/xoá
một môn học.
Lớp W_SV_Xem/In: Là giao diện phụ tương ứng với việc Xem/In lịch
môn học.
Lớp điều khiển: C_SV.
Lớp thực thể: SinhVien, LopGiang, MonHoc
Gán trách nhiệm cho các lớp vừa tìm được
Các lớp biên: Nhằm chuyển đổi thông tin giao tiếp giữa Sinh viên và hệ
thống.
Lớp điều khiển: chứa các qui tắc nghiệp vụ và đứng trung gian giữa các lớp
biên và các lớp thực thể. Cho phép từ màn hình có thể truy xuất được các
thông tin chứa đựng trong các thực thể.
Các lớp thực thể: lớp MonHoc, LopGiang và lớp SinhVien đã được mô tả
như trên.
c. Ca sử dụng Chọn môn học để giảng dạy
Các lớp biên gồm:
Lớp W_GV: Là giao diện chính giao tiếp với tác nhân giảng viên và hệ
thống.
Lớp W_GV_Them/Xoa: Là giao diện phụ tương ứng với việc thêm/xoá
một môn học.
Lớp W_GV_Xem/In: Là giao diện phụ tương ứng với việc Xem/In lịch
môn học.
Lớp điều khiển: C_GV
Lớp thực thể: GiangVien, LopGiang, MonHoc.
Gán trách nhiệm cho các lớp vừa tìm được
Các lớp biên: Nhằm chuyển đổi thông tin giao tiếp giữa Giảng viên và hệ
thống.
Lớp điều khiển: chứa các qui tắc nghiệp vụ và đứng trung gian giữa các lớp
biên và các lớp thực thể. Cho phép từ màn hình có thể truy xuất được các
thông tin chứa đựng trong các thực thể.
Các lớp thực thể: lớp MonHoc, LopGiang, GiangVien.
- 23 -
Ket-noi.com kho tài liệu miễn phí
Lớp điều khiển: chứa các qui tắc nghiệp vụ và đứng trung gian giữa các lớp
biên và các lớp thực thể. Cho phép từ màn hình có thể truy xuất được các
thông tin chứa đựng trong thực thể sinh viên.
Các lớp thực thể: Lớp SinhVien cung cấp thông tin cho CB tuyển sinh để
cập nhật thông tin cho sinh viên.
f. Ca sử dụng Duy trì thông tin môn học.
Các lớp biên gồm:
Lớp W_CBTS: Là giao diện chính giao tiếp với tác nhân CB tuyển sinh
và hệ thống.
Lớp W_CBTS_Them/Xoa: Là giao diện phụ tương ứng với việc
thêm/xoá một môn học.
Lớp W_CBTS_Sua: Là giao diện phụ tương ứng với việc sửa thông tin
môn học.
Lớp điều khiển: C_CBTS.
Lớp thực thể: Nganh, NhomNganh, MonHoc.
Gán trách nhiệm cho các lớp vừa tìm được
Các lớp biên: Nhằm chuyển đổi thông tin giao tiếp giữa CB tuyển sinh và hệ
thống.
Lớp điều khiển: chứa các qui tắc nghiệp vụ và đứng trung gian giữa các lớp
biên và các lớp thực thể. Cho phép từ màn hình có thể truy xuất được các
thông tin chứa đựng trong thực thể sinh viên.
Các lớp thực thể: Lớp MonHoc cung cấp thông tin cho CB tuyển sinh để
cập nhật thông tin cho môn học.
Gán trách nhiệm cho các lớp vừa tìm được
Các lớp biên: Nhằm chuyển đổi thông tin giao tiếp giữa NSD và hệ thống.
Lớp điều khiển: chứa các qui tắc nghiệp vụ và đứng trung gian giữa các lớp
biên và các lớp thực thể. Cho phép từ màn hình có thể truy xuất được các
thông tin chứa đựng trong thực thể sinh viên.
Các lớp thực thể: Lớp TaiKhoan chứa thông tin về tài khoản của NSD.
Dựa vào văn bản đặc tả các ca sử dụng và dựa vào việc phân tích để tìm ra các
lớp (phần IV), ta xây dựng biểu đồ trình tự cho mỗi kịch bản của từng ca sử dụng
như sau:
y/c ®¨ ng nhËp
dangNhap(tenDN, matKhau)
kiemTra(tenDN, matKhau)
kiemTra(tenDN, matKhau)
kÕt qu¶
kÕt qu¶
hiÓn thÞth«ng b¸ o
- 26 -
Ket-noi.com kho tài liệu miễn phí
- In lịch học.
- 27 -
Ket-noi.com kho tài liệu miễn phí
y/c chon HK
chon 1 HK
Chän them
hiÓn thÞ
y/c danh s¸ch m«n häc
y/c danh s¸ch m«n häc
kÕt qu¶
kÕt qu¶
hiÓn thÞ
kÕt qu¶
kÕt qu¶
chän 1 lí p gi¶ng
- 28 -
Ket-noi.com kho tài liệu miễn phí
b. Biểu đồ trình tự cho kịch bản Xoá một lớp giảng đã đăng kí học
chän 1 lí p gi¶ng
- 29 -
Ket-noi.com kho tài liệu miễn phí
chän 1 HK
y/c chän c«ng viÖc
Chän xem lÞch
hiÓn thÞ
hiÓn thÞc¸ c lí p gi¶ng
hiÓn thÞ
chän 1 lí p gi¶ng
- 30 -
Ket-noi.com kho tài liệu miễn phí
hienThi
y/c hiÓn thÞlí p gi¶ng
y/c hiÓn thÞlí p gi¶ng
kÕt qu¶
kÕt qu¶
hiÓn thÞkÕt qu¶
chän 1 lí p gi¶ng
chän in lÞch
inLÞch()
inLich()
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 31 -
Ket-noi.com kho tài liệu miễn phí
chän 1 HK
y/c chän c«ng viÖc
chä n thª m lí p gi¶ng
hiÓn thÞ
hiÓn thÞDSMH
hiÓn thÞDSMH
kÕt qu¶
kÕt qu¶
hiÓn thÞ
kÕt qu¶
hiÓn thÞ
chän 1 lí p gi¶ng
chän thª m lí p gi¶ng
them(maGv,maLop)
them(maGV, maLop )
- 32 -
Ket-noi.com kho tài liệu miễn phí
hiÓn thÞ
chän 1 lí p gi¶ng
xoa(maGV,maLop )
- 33 -
Ket-noi.com kho tài liệu miễn phí
chän 1 lí p gi¶ng
- 34 -
Ket-noi.com kho tài liệu miễn phí
kÕt qu¶
hiÓn thÞ
chän 1 lí p gi¶ng
chän in lÞch
inLich()
inLich( )
kÕt qu¶
kÕt qu¶
hienThi()
- 35 -
Ket-noi.com kho tài liệu miễn phí
kÕt qu¶
hiÓn thÞ
- 36 -
Ket-noi.com kho tài liệu miễn phí
y/c nhËp m· GV
nhËp m· GV
kiemTra(maGV)
hiÓn thÞTTGV
hiÓn thÞTTGV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän xoa(maGv)
xoa(maGv)
xoa(maGV)
- 37 -
Ket-noi.com kho tài liệu miễn phí
c. Biểu đồ trình tự cho kịch bản Sửa thông tin giảng viên.
y/c nhËp m· GV
nhËp m· GV
kiemTra(maGV)
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän suaTT(maGV)
suaTT(maGV)
suaTT(maGV)
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 38 -
Ket-noi.com kho tài liệu miễn phí
nhËp TTSV
them(maSv)
them(maSv)
y/c t¹ o m· Sv
y/c t¹ o m· SV
y/c t¹ o m· SV
taoMaSV( )
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 39 -
Ket-noi.com kho tài liệu miễn phí
: CBtuyensinh
: C_CBTS : SinhVien
: W_CBTS : W_CBTS_Them/Xoa
hiÓn thÞ
y/c nhËp m· SV
kiemTra(maSV)
hiÓn thÞTTSV
hiÓn thÞTTSV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän xoa(maSv)
xoa(maSv)
xoa(maSv)
- 40 -
Ket-noi.com kho tài liệu miễn phí
c. Biểu đồ trình tự cho kịch bản Sửa thông tin Sinh viên
y/c nhËp m· SV
nhËp m· SV
kiemTra(maSV)
hiÓn thÞTTSV
hiÓn thÞTTSV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän suaTT(maSv)
suaTT(maSv)
suaTT(maSv)
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 41 -
Ket-noi.com kho tài liệu miễn phí
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 42 -
Ket-noi.com kho tài liệu miễn phí
y/c nhËp m· MH
kiemTra(maMH)
hiÓn thÞTTMH
hiÓn thÞTTMH
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän xoa(maMH)
xoa(maMH)
xoa(maMH)
- 43 -
Ket-noi.com kho tài liệu miễn phí
c. Biểu đồ trình tự cho kịch bản Sửa thông tin môn học
y/c nhËp m· MH
nhËp m· MH
kiemTra(maMH)
hiÓn thÞTTMH
hiÓn thÞTTMH
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän suaTT(maMH)
suaTT(maMH)
suaTT(maMH)
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 44 -
Ket-noi.com kho tài liệu miễn phí
W_SV_Xem/In
hienThi()
chonLopGiang() 1
MonHoc
xemLich()
inLich() maMH : String
tenMH : String
1 LopGiang soTC : Integer
1 maLop : String loaiMH : String
lich : String hocKy : String
1 diaDiem : String
C_SV getMaMH()
getmaLop() setmaMH()
W_SVDKi setmaLop() 1..* 1 gettenMH()
hocKy hienThi() getLich() settenMH()
them() setLich() getsoTC()
themMonHoc() xoa() getdiaDiem() setsoTC()
xoaLopGiang() xemLich() setdiaDiem() getloaiMH()
xemLich() inLich() hienThi() setloaiMH()
inLich() them() gethocKy()
1
1 xoa() sethocKy()
xemLich() taoMaMH()
inLich() them()
0..8 xoa()
1 suaTT()
hienThi()
W_SV_Them/Xoa
0..40
hienThi()
chonMon() SinhVien
kiemTraDK() 1 maSV : Struct
themMonHoc() tenSV : String
chonLopGiang() ngaySinh : Date
themLopGiang() gioiTinh : String
xoaLopGiang() soDT : Integer
email : String
getmaSV()
setmaSV()
gettenSV()
settenSV()
getngaySinh()
setngaySinh()
getgioiTinh()
setgioiTinh()
getsoDT()
setsoDT()
getemail()
setemail()
taoMaSV()
them()
xoa()
suaTT()
hienThi()
- 45 -
Ket-noi.com kho tài liệu miễn phí
W_GV_Them/Xoa
maMon
maLop
1
hienthi()
chonmon()
themLopGiang()
MonHoc
1 maMH : String
tenMH : String
LopGiang soTC : Integer
1 1 maLop : String loaiMH : String
lich : String hocKy : String
diaDiem : String
W_GV C_GV getMaMH()
maLop getmaLop() setmaMH()
lich setmaLop() 1..* gettenMH()
hienthi() getLich() settenMH()
them() setLich() 1 getsoTC()
themLopGiang() xoa()
xoaLopGiang() getdiaDiem() setsoTC()
xemlich() setdiaDiem() getloaiMH()
xemLich() inlich()
inLich() hienThi() setloaiMH()
1 them() gethocKy()
1 xoa() sethocKy()
xemLich() taoMaMH()
1 inLich() them()
0..4 xoa()
suaTT()
W_GV_Xem/In hienThi()
maLop
lich 0..1
hienThi() 1 GiangVien
chonLopGiang() maGV : Struct
xemLich() tenGV : String
inLich() ngaySinh : Date
gioiTinh : String
soDT : Integer
email : String
getmaGV()
setmaGV()
gettenGV()
settenGV()
getngaySinh()
setngaySinh()
getgioiTinh()
setgioiTinh()
getsoDT()
setsoDT()
getemail()
setemail()
taoMaGV()
them()
xoa()
suaTT()
hienThi()
- 46 -
Ket-noi.com kho tài liệu miễn phí
3. Biểu đồ lớp cho ca sử dụng Duy trì thông tin giảng viên
W_CBTS_Them/Xoa
maGV
maSV
maMH
hienThi() 1
kiemTra()
them() GiangVien
xoa()
maGV : Struct
tenGV : String
1 ngaySinh : Date
gioiTinh : String
soDT : Integer
email : String
1 1
getmaGV()
W_CBTS setmaGV()
C_CBTS gettenGV()
maGV
settenGV()
maSV
hienThi() getngaySinh()
maMH
kiemTra() setngaySinh()
1 1 getgioiTinh()
them() them()
xoa() setgioiTinh()
xoa()
suaTT() getsoDT()
suaTT()
setsoDT()
1 getemail()
1 setemail()
taoMaGV()
them()
xoa()
suaTT()
1 hienThi()
W_CBTS_Sua
maGV
hienThi() 1
kiemTra()
suaTT()
- 47 -
Ket-noi.com kho tài liệu miễn phí
4. Biểu đồ lớp cho ca sử dụng Duy trì thông tin Sinh viên
W_CBTS_Them/Xoa
maGV
maSV
maMH
hienThi()
kiemTra()
them()
xoa() SinhVien
1 maSV : Struct
tenSV : String
ngaySinh : Date
gioiTinh : String
soDT : Integer
1 email : String
W_CBTS getmaSV()
C_CBTS setmaSV()
maGV
gettenSV()
maSV
hienThi() settenSV()
maMH 1 1 kiemTra() 1 1 getngaySinh()
them() setngaySinh()
them()
xoa() getgioiTinh()
xoa()
suaTT() setgioiTinh()
suaTT()
getsoDT()
1 setsoDT()
getemail()
setemail()
taoMaSV()
1 them()
xoa()
suaTT()
W_CBTS_Sua hienThi()
maGV
hienThi()
kiemTra()
suaTT()
- 48 -
Ket-noi.com kho tài liệu miễn phí
5. Biểu đồ lớp cho ca sử dụng Duy trì thông tin môn học
W_CBTS_Them/Xoa
maGV
maSV
maMH
1
hienThi()
kiemTra()
them() MonHoc
xoa() maMH : String
tenMH : String
1 soTC : Integer
loaiMH : String
1 hocKy : String
1 getMaMH()
C_CBTS setmaMH()
gettenMH()
hienThi() settenMH()
W_CBTS getsoTC()
kiemTra() 1 1
maGV setsoTC()
them()
maSV getloaiMH()
xoa()
maMH setloaiMH()
suaTT()
gethocKy()
them() 1 sethocKy()
xoa() taoMaMH()
suaTT() them()
1 xoa()
suaTT()
hienThi()
W_CBTS_Sua
maGV
hienThi() 1
kiemTra()
suaTT()
- 49 -
Ket-noi.com kho tài liệu miễn phí
0..8
LopGiang
maLop : String
lich : String
diaDiem : String
getmaLop()
setmaLop() MonHoc
0..4
getLich()
maMH : String
setLich()
1..* tenMH : String
getdiaDiem()
soTC : Integer
setdiaDiem()
loaiMH : String
hienThi()
hocKy : String
them()
xoa()
getMaMH()
xemLich()
setmaMH()
inLich()
1 * gettenMH()
settenMH() *
getsoTC()
setsoTC()
getloaiMH()
setloaiMH()
gethocKy()
sethocKy()
taoMaMH()
them()
xoa()
suaTT()
hienThi()
- 50 -
Ket-noi.com kho tài liệu miễn phí
1. Biểu đồ thành phần cho ca sử dụng Chọn môn học để giảng dạy
Interface_GV.Jar
W_GV_Them/Xoa. W_GV W_GV_Xem/
Class .Class In.Class
Server_GV.Jar
GiangVien
GVDK.
.Class
Class
Với ca sử dụng Chọn môn học để giảng dạy có 2 thành phần chính là:
Interface_GV.Jar và Server_GV.Jar. Trong 2 thành phần này lại chứa các thành
phần khác.
Chiều mũi tên thể hiện sự phụ thuộc giữa các thành phần.
Ví dụ: Thành phần MonHoc phụ thuộc vào thành phần LopGiang, thành phần
LopGiang sẽ được biên dịch trước thành phần MonHoc.
Sau khi xây dựng các thành phần, ta cần ánh xạ các lớp vào các thành phần
tương ứng.
- 51 -
Ket-noi.com kho tài liệu miễn phí
Interface_SV.Jar
Server_SV.Jar
C_SV.Class LopGiang. MonHoc.
Class Class
SVDK.Class SinhVien.
Class
3. Biểu đồ thành phần cho các ca sử dụng Duy trì thông tin giảng viên, sinh
viên và môn học.
Interface_CBTS.Jar
W_CBT W_CBTS_Them
W_CBTS_ /Xoa.Class
Sua.Class S.Class
C_CBTS.Class
Sever_CBTS.Jar
- 52 -
Ket-noi.com kho tài liệu miễn phí
IX. Biểu đồ triển khai của hệ thống Đăng kí môn học theo tín chỉ
Client_CBTS
InterfaceCBTS.Jar
<<TCP/IP>>
Inteface_GV.Jar Interface_SV.Jar
Sever_GV.Jar
Server_CBTS.Jar
Server_SV.Jar
<<TCP/IP>>
Database
Server
X. Thiết kế cơ sở dữ liệu
Các đối tượng thực thể là các đối tượng cần phải lưu trữ lâu dài trên bộ nhớ.
Trong hệ thống Đăng kí môn học theo tín chỉ, qua phân tích, thiết kế ta tìm được các
lớp thực thể như biểu đồ lớp (VI.6). Ở đây, chúng tôi lựa chọn hệ quản trị cơ sở dữ
liệu quan hệ để lưu trữ dữ liệu
- 53 -
Ket-noi.com kho tài liệu miễn phí
b. Bảng SinhVien
Thuộc tính maSV là thuộc tính phức hợp (gồm: maKhoaHoc, maKhoa,
maNganh, stt_SV) khi chuyển sang bảng sẽ được biểu diễn bởi các thuộc tính
đơn.
- 54 -
Ket-noi.com kho tài liệu miễn phí
c. Bảng GiangVien
Thuộc tính maGV là thuộc tính phức hợp (gồm: maKhoa, maNN, stt_GV)
khi chuyển sang bảng sẽ được biểu diễn bởi các thuộc tính đơn.
d. Bảng MonHoc
e. Bảng LopGiang
- 55 -
Ket-noi.com kho tài liệu miễn phí
f. MonHoc-Nganh
Tên thuộc tính Kiểu dữ liệu Ghi chú
maMH text Khoá chính
maNganh text Khoá chính
g. Bảng DangKi
Giữa bảng SinhVien và bảng LopGiang, bảng GiangVien voi bảng LopGiang
có kiểu liên kết n-n ta tạo ra một bảng liên kết như sau:
h. Bảng Khoa
Tên thuộc tính Kiểu dữ liệu Ghi chú
maKhoa text Khoá chính
tenKhoa text
i. Bảng Nganh
Tên thuộc tính Kiểu dữ liệu Ghi chú
maNganh text Khoá chính
tenNganh text
j. Bảng NhomNganh
Tên thuộc tính Kiểu dữ liệu Ghi chú
maNN text Khoá chính
tenNN text
1. Trang chủ
- 56 -
Ket-noi.com kho tài liệu miễn phí
- 57 -
Ket-noi.com kho tài liệu miễn phí
4. Trang thống kê
- 58 -
Ket-noi.com kho tài liệu miễn phí
[1]. Nguyễn Thị Tĩnh, Bài giảng môn Phân tích và thiết kế hệ thống hướng đối
tượng
[2]. Đoàn Văn Ban, Phân tích thiết kế hướng đối tượng bằng UML, NXB Khoa học
và Kỹ thuật, 2004
[3]. Đặng Văn Đức, Phân tích thiết kế hướng đối tượng bằng UML (Thực hành với
Rational Rose), NXB Khoa học và Kỹ thuật, 2002
[4]. Dương Kiều Hoa - Tôn Thất Hoà An, Phân tích và thiết kế hệ thống thông tin
với UML
[5]. Dương Anh Đức, Bài giảng về ngôn ngữ UML
[6]. Arthur M. Langer, Analysis and Design of Information System, Springer, 2008
- 59 -