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.
61 trang |
Chia sẻ: lylyngoc | Lượt xem: 2518 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Phân tích và thiết kế hệ thống đăng kí học online, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
trợ việc hiển thị lịch giảng dạy của từng Giảng viên và lịch học
cho từng Sinh viên.
- 4 -
- Hệ thống sẽ tạo ra cho mỗi Sinh viên, Giảng viên một tài khoản đăng nhập.
Căn cứ vào đó hệ thống có thể nhận biết Sinh viên, Giảng viên đó thuộc khoa nào,
ngành nào… để hiển thị thông tin về môn học cho phù hợp.
- Khi hết hạn đăng kí, danh sách các Môn học mà Sinh viên đã đăng kí sẽ được
gửi cho Hệ thu học phí để tính học phí.
- Thông tin đăng kí Môn học của sinh viên, thông tin đăng kí Môn dạy của
giảng viên và thông tin chi tiết về môn học sẽ được gửi cho Hệ quản lý TKB để xếp
thời khoá biểu, tổ chức lớp học, tổ chức thi.
II. Xác định các tác nhân của hệ thống
Dựa vào văn bản mô tả bài toán, ta xác định được các tác nhân của hệ thống
như sau:
Tác nhân Giảng viên: sử dụng hệ thống để chọn các môn học mà mình sẽ
dạy trong một kì.
Tác nhân Hệ thu học phí: là một hệ thống ngoài có chức năng:
Xác định số tiền phải thu trong kỳ dựa trên số tín chỉ sinh viên đăng ký học đã
được xác nhận của nhà trường và đơn giá, hệ số tính theo môn học.
Thu (học phí của kỳ) nhiều đợt (trong thời gian cho phép) đối với một sinh
viên.
Thu học phí có đối chiếu với danh sách sinh viên được giảm, miễn học phí.
Trả lại số tiền học sinh đã nộp (theo đăng ký môn học), nhưng không theo học
(được nhà trường chấp nhận).
Tác nhân Hệ quản lý TKB: là một hệ thống ngoài có chức năng:
Hỗ trợ sắp xếp thời khóa biểu tự động, tổ chức các lớp giảng, xếp phòng học.
Hỗ trợ việc tổ chức các lớp giảng cho mỗi môn học trong từng học kì. Một
môn học có thể có nhiều lớp giảng, mỗi lớp giảng có thể được tổ chức học
theo cả tuần hoặc từng đợt. Mỗi lớp giảng có từ 20 đến 40 sinh viên.
Hỗ trợ quản lý thời khóa biểu thi, phân bổ phòng thi, số lượng sinh viên thi,
kiểm tra việc thi chính thức, thi lại của sinh viên.
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
- 5 -
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.
III. Xác định các ca sử dụng của hệ thống
Dựa trên văn bản mô tả bài toán và việc phân tích để tìm ra các tác nhân, ta xác
định được các ca sử dụng như sau:
Đăng nhập hệ thống
Đăng kí môn học
Chọn môn học để giảng dạy
Duy trì thông tin sinh viên
Duy trì thông tin giảng viên
Duy trì thông tin môn học
Lập bản giới thiệu các môn học
Các tác nhân Các ca sử dụng
Sinh viên Đăng nhập hệ thống
Đăng kí môn học
Giảng viên Đăng nhập hệ thống
Chọn môn học để giảng dạy
CB tuyển sinh Đăng nhập hệ thống
Duy trì thông tin sinh viên
Duy trì thông tin giảng viên
Duy trì thông tin môn học
Lập bản giới thiệu các môn học
Hệ quản lý thời TKB Đăng kí môn học
Chọn môn học để giảng dạy
Hệ thu học phí Đăng kí môn học
- 6 -
Vẽ biểu đồ ca sử dụng
Duy tr× th«ng tin gi¶ng viªn
Duy tr× th«ng tin sinh viªn
LËp b¶n gií i thiÖu c¸c m«n
häc
CB TuyÓn
sinh
§ ¨ng nhËp hÖ thèng
HÖ thu häc
phÝ
Sinh vien
Gi¶ng viªn
§ ¨ng ki m«n häc
Chän m«n häc ®Ó gi¶ng
d¹y
Duy tr× th«ng tin m«n häc
HÖ qu¶n lý
TKB
IV. Đặc tả các ca sử dụng
1. Ca sử dụng Đăng nhập hệ thống
a. Mô tả tóm tắt
Tên ca sử dụng: Đăng nhập hệ thống
Mục đích: Mô tả cách một người sử dụng đăng nhập vào hệ thống.
Tác nhân: Sinh viên, Giảng viên, Bộ CB tuyển sinh.
b. Các luồng sự kiện
Luồng sự kiện chính
Ca sử dụng này bắt đầu khi tác nhân muốn đăng nhập vào hệ thống.
Hệ thống yêu cầu tác nhân nhập tài khoản và mật khẩu đăng nhập.
Tác nhân nhập tài khoản và mật khẩu đăng nhập của mình.
- 7 -
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.
2. Ca sử dụng Đăng kí môn học
a. Mô tả tóm tắt
Tên ca sử dụng: Đăng kí môn học
Mục đích:
- Giúp cho Sinh viên có thể đăng kí những môn học mà mình có thể học trong
một học kì.
- Sinh viên chọn các môn học để đăng kí hoặc có thể huỷ bỏ, thay đổi các môn
học mà mình đã đăng kí trong khoảng thời gian cho phép trước khi bắt đầu kì học.
Tác nhân: Sinh viên
b. Các luồng sự kiện
Luồng sự kiện chính
Ca sử dụng này bắt đầu khi sinh viên muốn đăng kí môn học hoặc thay đổi
môn học đã đăng kí.
Hệ thống yêu cầu Sinh viên chọn học kỳ.
Sinh viên chọn một học kỳ.
Hệ thống hiển thị các lựa chọn:
- Thêm
- 8 -
- 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
- 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.
- 9 -
- 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.
3. Ca sử dụng Chọn môn học để giảng dạy
a. Mô tả tóm tắt:
Tên ca sử dụng : Chọn môn học để giảng dạy
Mục đích:
- Giúp Giảng viên chọn môn học mà mình sẽ giảng dạy trong một học kì nào
- 10 -
đó.
- Giảng viên có thể thực hiện thêm, xóa, xem, hoặc in danh sách các lớp giảng
mà mình đã đăng kí dạy trong khoảng thời gian cho phép trước khi bắt đầu kì
học.
Tác nhân: Giảng viên
b. Các luồng sự kiện
Luồng sự kiện chính
Ca sử dụng này bắt đầu khi một Giảng viên muốn chọn môn học mình sẽ
giảng dạy cho học kì sắp tới.
Hệ thống yêu cầu Giảng viên chọn học kỳ.
Giảng viên chọn một học kỳ.
Hệ thống hiển thị các lựa chọn:
- Thêm
- Xoá
- Xem
- In
- Thoát
Hệ thống nhắc Giảng viên chọn chức năng mà họ muốn thực hiện:
- Nếu Giảng viên lựa chọn Thêm thì luồng sự kiện con Thêm một lớp giảng
được thực hiện.
- Nếu Giảng viên chọn Xoá thì luồng sự kiện con Xoá một lớp giảng được
thực hiện.
- Nếu Giảng viên chọn Xem thì luồng sự kiện con Xem lịch giảng dạy của
từng lớp giảng được thực hiện.
- Nếu Giảng viên chọn In thì luồng sự kiện con In lịch giảng dạy cho từng lớp
giảng sẽ được thực hiện.
Thêm một lớp giảng
- 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
- 11 -
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.
c. Tiền điều kiện
Giảng viên phải đăng nhập thành công vào hệ thống.
Ca sử dụng này chỉ có thể thực hiện được khi đã có thời khoá biểu dự kiến (do
Hệ quản lý TKB cung cấp).
- 12 -
d. Hậu điều kiện
Nếu ca sử dụng được thực hiện thành công, môn học mà Giảng viên lựa chọn
sẽ được thêm vào hay bị xoá khỏi danh sách chọn. Trong các trường hợp khác, hệ
thống ở trong trạng thái chưa thay đổi.
4. Ca sử dụng Duy trì thông tin giảng viên
a. Mô tả tóm tắt
Tên ca sử dụng: Duy trì thông tin giảng viên.
Mục đích: Ca sử dụng này cho phép cán bộ tuyển sinh duy trì thông tin của
Giảng viên trong hệ thống. Cán bộ tuyển sinh có thể thực hiện việc Thêm, Sửa, và
Xoá thông tin Giảng viên từ hệ thống.
Tác nhân: CB tuyển sinh.
b. Các luồng sự kiện
Luồng sự kiện chính: Ca sử dụng này bắt đầu khi CB tuyển sinh muốn thêm,
sửa, hoặc xóa thông tin Giảng viên trong hệ thống.
Hệ thống hiển thị các lựa chọn:
- 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 giảng viên”, luồng sự kiện con Thêm
một giảng viên sẽ được thực hiện.
Nếu CB tuyển sinh chọn “Sửa thông tin giảng viên”, luồng sự kiện con Sửa
thông tin giảng viên sẽ được thực hiện.
Nếu CB tuyển sinh chọn “Xoá một giảng viên”, luồng sự kiện con Xoá một
giảng viên sẽ được thực hiện.
Thêm một giảng viên
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
- 13 -
- 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
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.
Hệ thống nhắc CB tuyển sinh xác nhận việc xoá giảng viên.
CB tuyển sinh xác nhận việc xoá.
- 14 -
Giảng viên đó sẽ bị xoá khỏi hệ thống.
Các luồng rẽ nhánh
Luồng A1: Nhập mã số giảng viên không tồn tại.
Hệ thống thông báo lỗi.
Hệ thống yêu cầu CB tuyển sinh nhập vào một mã số giảng viên khác hoặc
huỷ bỏ thao tác xoá hoặc sửa.
Nếu CB tuyển sinh nhập mã số giảng viên khác thì quay lại luồng Xoá hoặc
Sửa.
Nếu CB tuyển sinh chọn Huỷ, ca sử dụng kết thúc.
c. Tiền điều kiện
CB tuyển sinh 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 này được thực hiện thành công, thông tin về giảng viên sẽ được
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.
5. Ca sử dụng Duy trì thông tin sinh viên
a. Mô tả tóm tắt
Tên ca sử dụng: Duy trì thông tin sinh viên.
Mục đích: Ca sử dụng này cho phép cán bộ tuyển sinh duy trì thông tin của
Sinh viên trong hệ thống. Cán bộ tuyển sinh có thể thực hiện việc Thêm, Sửa, và
Xoá thông tin sinh viên từ hệ thống.
Tác nhân: CB tuyển sinh.
b. Các luồng sự kiện
Luồng sự kiện chính: Ca sử dụng này bắt đầu khi CB tuyển sinh muốn thêm,
sửa, hoặc xóa thông tin sinh viên từ hệ thống.
Hệ thống hiển thị các lựa chọn:
- 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.
- 15 -
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.
Sửa đổi thông tin sinh viên
Hệ thống yêu cầu CB tuyển sinh nhập mã số sinh viên.
CB tuyển sinh nhập vào mã số sinh viên.
Hệ thống kiểm tra mã số sinh viên vừa nhập có tồn tại hay không? Nếu không
- 16 -
tồn tại thì thực hiện luồng A1.
Hệ thống hiển thị thông tin về sinh 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ề sinh 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 sinh viên
Hệ thống yêu cầu CB tuyển sinh nhập mã số sinh viên.
CB tuyển sinh nhập vào mã số sinh viên.
Hệ thống kiểm tra mã số sinh 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ề sinh viên có mã số vừa nhập.
Hệ thống nhắc CB tuyển sinh xác nhận việc xoá sinh viên.
CB tuyển sinh xác nhận việc xoá.
Sinh viên đó sẽ bị xoá khỏi hệ thống.
Các luồng rẽ nhánh
Luồng A1: Nhập mã số sinh viên không tồn tại.
Hệ thống thông báo lỗi.
Hệ thống yêu cầu CB tuyển sinh nhập vào một mã số sinh viên khác hoặc huỷ
bỏ thao tác xoá hoặc sửa.
Nếu CB tuyển sinh nhập mã số Sinh viên khác thì quay lại luồng Xoá hoặc
Sửa.
Nếu CB tuyển sinh chọn Huỷ, ca sử dụng kết thúc.
c. Tiền điều kiện
CB tuyển sinh 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 này được thực hiện thành công, thông tin về sinh viên sẽ được
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.
6. Ca sử dụng Duy trì thông tin môn học
a. Mô tả tóm tắt
- 17 -
Tên ca sử dụng: Duy trì thông tin môn học.
Mục đích: Ca sử dụng này cho phép cán bộ tuyển sinh duy trì thông tin các
môn học trong hệ thống. Cán bộ tuyển sinh có thể thực hiện việc Thêm, Sửa, và Xoá
thông tin môn học từ hệ thống.
Tác nhân: CB tuyển sinh.
b. Các luồng sự kiện
Luồng sự kiện chính: Ca sử dụng này bắt đầu khi CB tuyển sinh muốn thêm,
sửa, hoặc xóa thông tin môn học từ hệ thống.
Hệ thống hiển thị các lựa chọn:
- 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 môn học”, luồng sự kiện con Thêm một
môn học sẽ được thực hiện.
- Nếu CB tuyển sinh chọn “Sửa thông tin môn học”, luồng sự kiện con Sửa
thông tin môn học sẽ được thực hiện.
- Nếu CB tuyển sinh chọn “Xoá một môn học”, luồng sự kiện con Xoá một
môn học sẽ được thực hiện.
Thêm một môn học
Hệ thống yêu cầu CB tuyển sinh nhập thông tin môn học, bao gôm:
- Tên môn học
- Thuộc chuyên ngành
- Thuộc nhóm ngành
- Số tín chỉ
- Loại môn học (tự chọn hay bắt buộc)
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 môn học đó.
Môn học được thêm vào hệ thống.
Hệ thống cung cấp cho CB tuyển sinh mã số của môn học.
Sửa đổi thông tin môn học
- 18 -
Hệ thống yêu cầu CB tuyển sinh nhập mã số môn học.
CB tuyển sinh nhập vào mã số môn học.
Hệ thống kiểm tra mã số môn học 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ề môn học có mã số vừa nhập.
CB tuyển sinh sửa những thông tin cần thiết về môn học 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 môn học
Hệ thống yêu cầu CB tuyển sinh nhập mã số môn học.
CB tuyển sinh nhập vào mã số môn học.
Hệ thống kiểm tra mã số môn học 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ề môn học có mã số vừa nhập.
Hệ thống nhắc CB tuyển sinh xác nhận việc xoá môn học.
CB tuyển sinh xác nhận việc xoá.
Môn học đó sẽ bị xoá khỏi hệ thống.
Các luồng rẽ nhánh:
Luồng A1: Nhập mã số môn học không tồn tại.
Hệ thống thông báo lỗi.
Hệ thống yêu cầu CB tuyển sinh nhập vào một mã số môn học khác hoặc huỷ
bỏ thao tác xoá hoặc sửa.
Nếu CB tuyển sinh nhập mã số môn học khác thì quay lại luồng Xoá hoặc
Sửa.
Nếu CB tuyển sinh chọn Huỷ, ca sử dụng kết thúc.
c. Tiền điều kiện
CB tuyển sinh 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 này được thực hiện thành công, thông tin về môn học sẽ được
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 ở
- 19 -
trong trạng thái chưa thay đổi.
7. Ca sử dụng Lập bản giới thiệu các môn học
a. Mô tả tóm tắt
Tên ca sử dụng: Lập bản giới thiệu các môn học.
Mục đích: Ca sử dụng này cho phép cán bộ tuyển sinh lập bản giới thiệu các
môn học có trong học kì để sinh viên có căn cứ lựa chọn. Thông tin về mỗi môn học
bao gồm: tên môn học, thời gian học, số tín chỉ, thời lượng học, giáo viên giảng dạy,
điều kiện tiên quyết, nội dung môn học, số lượng sinh viên tối đa.
Tác nhân: CB tuyển sinh.
b. Các luồng sự kiện
Luồng sự kiện chính: Ca sử dụng này bắt đầu khi CB tuyển sinh muốn thêm,
sửa, hoặc xóa thông tin liên quan đến môn học (như thời gian học, thời lượng
học, số lượng sinh viên tối đa, nội dung môn học, tài liệu tham khảo, điều kiện
tiên quyết của mỗi môn học).
Hệ thống hiển thị các lựa chọn:
- 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 thông tin chi tiết cho mỗi môn học”, luồng
sự kiện con Thêm sẽ được thực hiện.
- Nếu CB tuyển sinh chọn “Sửa thông tin chi tiết cho mỗi môn học”, luồng sự
kiện con Sửa sẽ được thực hiện.
- Nếu CB tuyển sinh chọn “Xoá thông tin chi tiết của mỗi môn học”, luồng sự
kiện con Xoá sẽ được thực hiện.
Thêm thông tin chi tiết cho mỗi môn học
Hệ thống yêu cầu CB tuyển sinh nhập mã số môn học.
CB tuyển sinh nhập mã môn học cần thêm thông tin. Nếu mã số môn học
không tồn tại, thực hiện luồng A1.
Hệ thống hiển thị các thông tin về môn học như tên môn học, số tín chỉ, giáo
- 20 -
viên giảng dạy, điều kiện tiên quyết.
CB tuyển sinh chỉ có thể thêm, sửa, hoặc xoá các thông tin như: thời gian học,
thời lượng học, số lượng sinh viên tối đa, nội dung môn học, tài liệu tham
khảo, điều kiện tiên quyết.
CB tuyển sinh nhập thông liên quan cho mỗi môn học.
Thông tin chi tiết về môn học được thêm vào hệ thống.
Sửa đổi thông tin chi tiết cho mỗi môn học
Hệ thống yêu cầu CB tuyển sinh nhập mã số môn học.
CB tuyển sinh nhập vào mã số môn học. Nếu mã số môn học không tồn tại,
thực hiện luồng A1.
Hệ thống hiển thị thông tin về môn học có mã số vừa nhập.
CB tuyển sinh được phép sửa những thông tin chi tiết như: thời gian học, thời
lượng học, số lượng sinh viên tối đa, nội dung môn học, tài liệu tham khảo,
điều kiện tiên quyết 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á thông tin chi tiết của mỗi môn học
Hệ thống yêu cầu CB tuyển sinh nhập mã số môn học.
CB tuyển sinh nhập vào mã số môn học. Nếu mã số môn học không tồn tại,
thực hiện luồng A1.
Hệ thống hiển thị thông tin chi tiết về môn học có mã số vừa nhập.
CB tuyển sinh được phép xoá những thông tin như: thời gian học, thời lượng
học, số lượng sinh viên tối đa, nội dung môn học, tài liệu tham khảo, điều
kiện tiên quyết.
CB tuyển sinh xác nhận việc xoá.
Thông tin chi tiết về môn học đó sẽ bị xoá khỏi hệ thống.
Các luồng rẽ nhánh
Luồng A1: Nhập mã số môn học không tồn tại.
Hệ thống thông báo lỗi.
Hệ thống yêu cầu CB tuyển sinh nhập vào một mã số môn học khác hoặc huỷ
bỏ thao tác thêm, xoá hoặc sửa.
- 21 -
Nếu CB tuyển sinh nhập mã số môn học khác thì quay lại luồng Thêm, Xoá
hoặc Sửa.
Nếu CB tuyển sinh chọn Huỷ, ca sử dụng kết thúc.
c. Tiền điều kiện
CB tuyển sinh 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 này được thực hiện thành công, thông tin chi tiết về môn học sẽ
được 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.
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)
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)
- 22 -
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)
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í.
- 23 -
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.
2. Xác định các lớp tham gia vào các ca sử dụng
Dựa vào văn bản mô tả bài toán và dựa vào văn bản đặc tả các ca sử dụng, ta
xác định các lớp tham gia vào các ca sử dụng như sau:
a. Ca sử dụng Đăng nhập hệ thống
Các lớp biên gồm:
Lớp W_NSD: Là giao diện chính giao tiếp với tác nhân Sinh viên,
Giảng viên, CB tuyển sinh và hệ thống.
Lớp điều khiển: C_NSD.
Lớp thực thể: TaiKhoan
b. Ca sử dụng Đăng kí môn học
Các lớp biên gồm:
Lớp W_SVDKi: Là giao diện chính giao tiếp với tác nhân Sinh viên và
hệ thống.
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.
- 24 -
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.
d. Ca sử dụng Duy trì thông tin giảng viên.
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 giảng viên.
Lớp W_CBTS_Sua: Là giao diện phụ tương ứng với việc sửa thông tin
giảng viên.
Lớp điều khiển: C_CBTS.
- 25 -
Lớp thực thể: Khoa, NhomNganh, GiangVien.
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ể giảng viên.
Các lớp thực thể: Lớp GiangVien cung cấp thông tin cho CB tuyển sinh để
cập nhật thông tin cho giảng viên.
e. Ca sử dụng Duy trì thông tin sinh viên.
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 sinh viên.
Lớp W_CBTS_Sua: Là giao diện phụ tương ứng với việc sửa thông tin
sinh viên.
Lớp điều khiển: C_CBTS.
Lớp thực thể: Khoa, Nganh, SinhVien.
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 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.
- 26 -
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.
VI. Xây dựng biểu đồ trình tự
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:
- 27 -
1. Ca sử dụng Đăng nhập hệ thống
Biểu đồ trình tự cho kịch bản đăng nhập
: NSD : W_NSD : C_NSD : TaiKhoan
dangNhap(tenDN, matKhau)
y/c ®¨ ng nhËp
kiemTra(tenDN, matKhau)
kiemTra(tenDN, matKhau)
kÕt qu¶
kÕt qu¶
hiÓn thÞ th«ng b¸o
2. Ca sử dụng Đăng kí môn học
Với ca sử dụng Đăng kí môn học, ta xác định được các kịch bản chính như
sau:
- Thêm một môn học
- Xoá một lớp giảng đã đăng kí học.
- Xem lịch học.
- In lịch học.
- 28 -
a. Biểu đồ trình tự cho kịch bản Thêm một môn học
: Sinh_Vien : W_SVDKi : W_SV_Them/Xoa : C_SV : MonHoc : LopGiang
y/c chon HK
chon 1 HK
y/c chän viÖc
chän thªm lí p gi¶ng
chän 1 lí p gi¶ng
them(maSV, maLop )
them( maSV, maLop)
chän thªm
kiÓm tra ®¨ ng kÝ
hiÓn thÞ kÕt qu¶
hiÓn thÞ c¸ c lí p gi¶ng
kÕt qu¶
hiÓn thÞ c¸c lí p gi¶ng
kÕt qu¶
chän 1 m«n häc
Chän them
hiÓn thÞ
hiÓn thÞ
y/c danh s¸ ch m«n häc
kÕt qu¶
y/c danh s¸ ch m«n häc
kÕt qu¶
- 29 -
b. Biểu đồ trình tự cho kịch bản Xoá một lớp giảng đã đăng kí học
: Sinh_Vien : W_SVDKi : W_SV_Them/Xoa : C_SV : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän xo¸ lí p gi¶ng
xoa(maSV, maLop)
xoa(maSV,maLop )
chän 1 lí p gi¶ng
Chän xo¸ lí p gi¶ng
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
- 30 -
c. Biểu đồ trình tự cho kịch bản Xem lich học
: Sinh_Vien : W_SVDKi : W_SV_Xem/In : C_SV : LopGiang
y/c chän häc k×
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
kÕt qu¶
hiÓn thÞ
chän 1 lí p gi¶ng
chän xem lÞch
y/c xem lÞch
kÕt qu¶
hiÓn thÞ lÞch
hiÓn thÞ c¸c lí p gi¶ng
kÕt qu¶
y/c xem lÞch
kÕt qu¶
- 31 -
d. Biểu đồ trình tự cho kịch bản In lich học
: Sinh_Vien : W_SVDKi : W_SV_Xem/In : C_SV : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän in lÞch
chän 1 lí p gi¶ng
Chän in lich häc
hienThi
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
hiÓn thÞ kÕt qu¶
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
inLÞch()
inLich()
kÕt qu¶
kÕt qu¶
hiÓn thÞ
3. Ca sử dụng Chọn môn học để giảng dạy
Với ca sử dụng Chọn môn học để giảng dạy, ta xác định được các kịch bản
chính như sau:
- Thêm một lớp giảng
- Xoá một lớp giảng.
- Xem lịch giảng dạy.
- In lịch giảng dạy.
- 32 -
a. Biểu đồ trình tự cho kịch bản Thêm một lớp giảng
: Giang_Vien : W_GV : W_GV_Them/Xoa : C_GV : MonHoc : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän thªm lí p gi¶ng
them(maGv,maLop)
them(maGV, maLop )
chän 1 lí p gi¶ng
chän 1 m«n häc
hiÓn thÞ
y/c hiÓn thÞ c¸c l í p gi¶ng
y/c hiÓn thÞ c¸c l í p gi¶ng
kÕt qu¶
chän thªm l í p gi¶ng
hiÓn thÞ
hiÓn thÞ
hiÓn thÞ DSMH
kÕt qu¶
hiÓn thÞ DSMH
kÕt qu¶
- 33 -
b. Biểu đồ trình tự cho kịch bản Xoá một lớp giảng
: Giang_Vien : W_GV : W_GV_Them/Xoa : C_GV : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän xo¸ lí p gi¶ng
xoa(maGv,maLop)
xoa(maGV,maLop )
chän 1 lí p gi¶ng
chän xo¸ lí p gi¶ng
hiÓn thÞ
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
- 34 -
c. Biểu đồ trình tự cho kịch bản Xem lịch giảng
: Giang_Vien : W_GV : W_GV_Xem/In : C_GV : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän xem lÞch
hiÓn thÞ
chän 1 lí p gi¶ng
chän xem lÞch
y/c xem lÞch
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
kÕt qu¶
hiÓn thÞ
y/c xem lÞch
kÕt qu¶
- 35 -
d. Biểu đồ trình tự cho kịch bản In lịch giảng
: Giang_Vien : W_GV : W_GV_Xem/In : C_GV : LopGiang
y/c chän häc k×
chän 1 HK
y/c chän c«ng viÖc
chän in lÞch
hienThi()
inLich()
kÕt qu¶
inLich( )
kÕt qu¶
chän 1 lí p gi¶ng
chän in lÞch
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
hiÓn thÞ
y/c hiÓn thÞ lí p gi¶ng
kÕt qu¶
- 36 -
4. Ca sử dụng Duy trì thông tin giảng viên
Với ca sử dụng Duy trì thông tin giảng viên, ta xác định được các kịch bản
chính như sau:
- Thêm một giảng viên
- Xoá một giảng viên.
- Sửa thông tin giảng viên.
a. Biểu đồ trình tự cho kịch bản Thêm một giảng viên
: CBtuyensinh : W_CBTS : W_CBTS_Them/Xoa : C_CBTS
: GiangVien
y/c chän c«ng viÖc
chän thªm gi¶ng viªn
hiÓn thÞ
nhËp TT gi¶ng viªn
y/c t¹o m· Gv
y/c t¹o m· Gv
y/c t¹o m· Gv
taoMaGV()
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän thªm 1 gi¶ng viªn
them(maGv)
them(maGV)
- 37 -
b. Biểu đồ trình tự cho kịch bản Xoá một giảng viên.
: CBtuyensinh : W_CBTS : W_CBTS_Them/Xoa : C_CBTS : GiangVien
y/c chän c«ng viÖc
chän xo¸ GV
hiÓn thÞ
nhËp m· GV
kiemTra(maGV)
hiÓn thÞ TTGV
y/c nhËp m· GV
hiÓn thÞ TTGV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
chän xoa(maGv)
xoa(maGv)
xoa(maGV)
- 38 -
c. Biểu đồ trình tự cho kịch bản Sửa thông tin giảng viên.
: CBtuyensinh : W_CBTS : W_CBTS_Sua : C_CBTS : GiangVien
y/c chän c«ng viÖc
chän suaTT(maGV)
hiÓn thÞ
suaTT(maGV)
kÕt qu¶
suaTT(maGV)
kÕt qu¶
nhËp m· GV
y/c hiÓn thÞ TTGV
y/c hiÓn thÞ TTGV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
kiemTra(maGV)
chän söa TTGV
hiÓn thÞ
y/c nhËp m· GV
- 39 -
5. Ca sử dụng Duy trì thông tin Sinh viên
Với ca sử dụng Duy trì thông tin Sinh viên, ta xác định được các kịch bản chính
như sau:
- Thêm một Sinh viên
- Xoá một Sinh viên.
- Sửa thông tin Sinh viên.
a. Biểu đồ trình tự cho kịch bản Thêm một Sinh viên
: CBtuyensinh : W_CBTS : W_CBTS_Them/Xoa : C_CBTS : SinhVien
y/c chän c«ng viÖc
chän thªm SV
hiÓn thÞ
nhËp TTSV
y/c t¹o m· Sv
hiÓn thÞ
y/c t¹o m· SV
y/c t¹o m· SV
taoMaSV( )
kÕt qu¶
kÕt qu¶
them(maSv)
them(maSv)
- 40 -
b. Biểu đồ trình tự cho kịch bản Xoá một Sinh viên
: CBtuyensinh
: W_CBTS : W_CBTS_Them/Xoa : C_CBTS : SinhVien
y/c chän c«ng viÖc
chän xo¸ sinh viªn
hiÓn thÞ
nhËp m· sinh viªn
kiemTra(maSV)
y/c nhËp m· SV
chän xoa(maSv)
hiÓn thÞ TTSV
xoa(maSv)
hiÓn thÞ TTSV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
xoa(maSv)
- 41 -
c. Biểu đồ trình tự cho kịch bản Sửa thông tin Sinh viên
: CBtuyensinh : W_CBTS : W_CBTS_Sua : C_CBTS : SinhVien
y/c chän c«ng viÖc
chän söa TTSV
hiÓn thÞ
y/c nhËp m· SV
nhËp m· SV
kiemTra(maSV)
chän suaTT(maSv)
hiÓn thÞ TTSV
suaTT(maSv)
hiÓn thÞ TTSV
kÕt qu¶
kÕt qu¶
hiÓn thÞ
suaTT(maSv)
kÕt qu¶
kÕt qu¶
hiÓn thÞ
- 42 -
6. Ca sử dụng Duy trì thông tin môn học
Với ca sử dụng Duy trì thông tin môn học, ta xác định được các kịch bản chính
như sau:
- Thêm một môn học
- Xoá một môn học
- Sửa thông tin môn học
a. Biểu đồ trình tự cho kịch bản Thêm một môn học
: CBtuyensinh : W_CBTS : W_CBTS_Them/Xoa : C_CBTS : MonHoc
y/c chän c«ng viÖc
chän thªm MH
hiÓn thÞ
nhËp TT m«n häc
chän thªm 1 m«n häc
them(maMH)
hiÓn thÞ
y/c t¹o m· MH
them(maMH)
y/c t¹o m· MH
y/c t¹o m· MH
taoMaMH()
kÕt qu¶
kÕt qu¶
- 43 -
b. Biểu đồ trình tự cho kịch bản Xoá một môn học
: CBtuyensinh : W_CBTS : W_CBTS_Them/Xoa : C_CBTS : MonHoc
y/c chän c«ng viÖc
chän xo¸ m«n häc
hiÓn thÞ
y/c nhËp m· MH
nhËp m· m«n häc
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)
- 44 -
c. Biểu đồ trình tự cho kịch bản Sửa thông tin môn học
: CBtuyensinh : W_CBTS : W_CBTS_Sua : C_CBTS : MonHoc
y/c chän c«ng viÖc
chän söa TTMH
hiÓn thÞ
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Þ
VII. Vẽ biểu đồ lớp
Căn cứ vào biểu đồ trình tự và các lớp tìm được ở phần IV, ta xây dựng biểu đồ
lớp cho từng ca sử dụng như sau:
- 45 -
1. Biểu đồ lớp cho ca sử dụng Đăng kí môn học
0..40
W_SVDKi
hocKy
themMonHoc()
xoaLopGiang()
xemLich()
inLich()
W_SV_Xem/In
hienThi()
chonLopGiang()
xemLich()
inLich()
1
1
W_SV_Them/Xoa
hienThi()
chonMon()
kiemTraDK()
themMonHoc()
chonLopGiang()
themLopGiang()
xoaLopGiang()
1
1
C_SV
hienThi()
them()
xoa()
xemLich()
inLich()
1
1
1
1
MonHoc
maMH : String
tenMH : String
soTC : Integer
loaiMH : String
hocKy : String
getMaMH()
setmaMH()
gettenMH()
settenMH()
getsoTC()
setsoTC()
getloaiMH()
setloaiMH()
gethocKy()
sethocKy()
taoMaMH()
them()
xoa()
suaTT()
hienThi()
LopGiang
maLop : String
lich : String
diaDiem : String
getmaLop()
setmaLop()
getLich()
setLich()
getdiaDiem()
setdiaDiem()
hienThi()
them()
xoa()
xemLich()
inLich()
1..* 1
SinhVien
maSV : Struct
tenSV : String
ngaySinh : Date
gioiTinh : String
soDT : Integer
email : String
getmaSV()
setmaSV()
gettenSV()
settenSV()
getngaySinh()
setngaySinh()
getgioiTinh()
setgioiTinh()
getsoDT()
setsoDT()
getemail()
setemail()
taoMaSV()
them()
xoa()
suaTT()
hienThi()
0..8
- 46 -
2. Biểu đồ lớp cho ca sử dụng Chọn môn học để giảng dạy
W_GV
maLop
lich
themLopGiang()
xoaLopGiang()
xemLich()
inLich()
W_GV_Them/Xoa
maMon
maLop
hienthi()
chonmon()
themLopGiang()
1
1
W_GV_Xem/In
maLop
lich
hienThi()
chonLopGiang()
xemLich()
inLich()
1
1
C_GV
hienthi()
them()
xoa()
xemlich()
inlich()
1
1
1
1
MonHoc
maMH : String
tenMH : String
soTC : Integer
loaiMH : String
hocKy : String
getMaMH()
setmaMH()
gettenMH()
settenMH()
getsoTC()
setsoTC()
getloaiMH()
setloaiMH()
gethocKy()
sethocKy()
taoMaMH()
them()
xoa()
suaTT()
hienThi()
LopGiang
maLop : String
lich : String
diaDiem : String
getmaLop()
setmaLop()
getLich()
setLich()
getdiaDiem()
setdiaDiem()
hienThi()
them()
xoa()
xemLich()
inLich()
1..*
1
GiangVien
maGV : Struct
tenGV : String
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()
0..1
0..4
- 47 -
3. Biểu đồ lớp cho ca sử dụng Duy trì thông tin giảng viên
W_CBTS
maGV
maSV
maMH
them()
xoa()
suaTT()
W_CBTS_Them/Xoa
maGV
maSV
maMH
hienThi()
kiemTra()
them()
xoa()
1
1
W_CBTS_Sua
maGV
hienThi()
kiemTra()
suaTT()
1
1
C_CBTS
hienThi()
kiemTra()
them()
xoa()
suaTT()
1
1
1
1
GiangVien
maGV : Struct
tenGV : String
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()
11
- 48 -
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()
W_CBTS_Sua
maGV
hienThi()
kiemTra()
suaTT()
W_CBTS
maGV
maSV
maMH
them()
xoa()
suaTT()
1
1
1
1
C_CBTS
hienThi()
kiemTra()
them()
xoa()
suaTT()
11
SinhVien
maSV : Struct
tenSV : String
ngaySinh : Date
gioiTinh : String
soDT : Integer
email : String
getmaSV()
setmaSV()
gettenSV()
settenSV()
getngaySinh()
setngaySinh()
getgioiTinh()
setgioiTinh()
getsoDT()
setsoDT()
getemail()
setemail()
taoMaSV()
them()
xoa()
suaTT()
hienThi()
11
- 49 -
5. Biểu đồ lớp cho ca sử dụng Duy trì thông tin môn học
MonHoc
maMH : String
tenMH : String
soTC : Integer
loaiMH : String
hocKy : String
getMaMH()
setmaMH()
gettenMH()
settenMH()
getsoTC()
setsoTC()
getloaiMH()
setloaiMH()
gethocKy()
sethocKy()
taoMaMH()
them()
xoa()
suaTT()
hienThi()
W_CBTS_Sua
maGV
hienThi()
kiemTra()
suaTT()
W_CBTS
maGV
maSV
maMH
them()
xoa()
suaTT()
1
1
C_CBTS
hienThi()
kiemTra()
them()
xoa()
suaTT()
11
1
1
W_CBTS_Them/Xoa
maGV
maSV
maMH
hienThi()
kiemTra()
them()
xoa()
1
1
1
1
- 50 -
6. Các lớp chính của hệ thống đăng kí môn học
TaiKhoan
taiKhoanDN : String
matKhau : String
taoTaiKhoan()
kiemTra(tenDN : String, matKhau : String)
gettenDN()
settenDN()
getmatKhau()
setmatKhau()
Khoa
maKhoa : String
tenKhoa : String
getmaKhoa()
setmaKhoa()
gettenKhoa()
settenKhoa()
NhomNganh
maNN : String
tenNN : String
getmaNN()
setmaNN()
gettenNN()
settenNN()
Nganh
maNganh : String
tenNganh : String
getmaNganh()
setmaNganh()
gettenNganh()
settenNganh()
MonHoc
maMH : String
tenMH : String
soTC : Integer
loaiMH : String
hocKy : String
getMaMH()
setmaMH()
gettenMH()
settenMH()
getsoTC()
setsoTC()
getloaiMH()
setloaiMH()
gethocKy()
sethocKy()
taoMaMH()
them()
xoa()
suaTT()
hienThi()
1
*
1..*
*
SinhVien
maSV : Struct
tenSV : String
ngaySinh : Date
gioiTinh : String
soDT : Integer
email : String
getmaSV()
setmaSV()
gettenSV()
settenSV()
getngaySinh()
setngaySinh()
getgioiTinh()
setgioiTinh()
getsoDT()
setsoDT()
getemail()
setemail()
taoMaSV()
them()
xoa()
suaTT()
hienThi()
1
*1 *
GiangVien
maGV : Struct
tenGV : String
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()
1
* 1*
LopGiang
maLop : String
l ich : String
diaDiem : String
getmaLop()
setmaLop()
getLich()
setLich()
getdiaDiem()
setdiaDiem()
hienThi()
them()
xoa()
xemLich()
inLich()
1..*
1
0..8
0..40
0..4
0..1
- 51 -
VIII. Xây dựng biểu đồ thành phần
Biểu đồ thành phần mô tả các thành phần của hệ thống và mối quan hệ phụ
thuộc giữa chúng. Giữa các thành phần chỉ có một mối quan hệ phụ thuộc được biểu
diễn bằng mũi tên đứt nét.
1. Biểu đồ thành phần cho ca sử dụng Chọn môn học để giảng dạy
Server_GV.Jar
Interface_GV.Jar
W_GV
.Class
W_GV_Them/Xoa.
Class
W_GV_Xem/
In.Class
MonHoc.
Class
LopGiang.
Class
GiangVien
.ClassGVDK.Class
C_GV.
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.
- 52 -
2. Biểu đồ thành phần cho ca sử dụng Đăng kí môn học
Interface_SV.Jar
W_SVDKi
.Class
W_SV_Them/
Xoa.Class
W_SV_Xem
/In.Class
Server_SV.Jar
C_SV.Class LopGiang.
Class
MonHoc.
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
S.Class
W_CBTS_Them
/Xoa.ClassW_CBTS_Sua.Class
Sever_CBTS.Jar
MonHoc.
Class
SinhVien.
Class
GiangVien
.Class
C_CBTS.Class
- 53 -
IX. Biểu đồ triển khai của hệ thống Đăng kí môn học theo tín chỉ
Client_GV
Inteface_GV.Jar
Server
Application
Sever_GV.Jar
Server_CBTS.Jar
Server_SV.Jar
Database
Server
>
>
Client_SV
Interface_SV.Jar
Client_CBTS
InterfaceCBTS.Jar
>
>
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
1. Ánh xạ các lớp sang bảng
Mỗi lớp thực thể sẽ tương ứng với một bảng.
2. Ánh xạ các liên kết
Liên kết 1- 1: Đưa khoá chính của 1 bảng vào bảng kia để nó trở thành khoá
ngoài.
Liên kết 1 – n: Đưa khoá chính của bảng bên 1 vào bảng bên nhiều để nó trở
thành khoá ngoài.
Giữa bảng SinhVien và bảng Khoa: đưa khoá chính (maKhoa) của
bảng Khoa vào bảng SinhVien.
Giữa bảng GiangVien và bảng Khoa: đưa khoá chính (maKhoa) của
- 54 -
bảng Khoa vào bảng GiangVien.
Giữa bảng GiangVien và bảng NhomNganh: đưa khoá chính (maNN)
của bảng NhomNganh vào bảng GiangVien.
Giữa bảng SinhVien và bảng Nganh: đưa khoá chính (maNganh) của
bảng Nganh vào bảng SinhVien.
Giữa bảng MonHoc và bảng NhomNganh: đưa khoá chính (maNN)
của bảng NhomNganh vào bảng MonHoc.
Giữa bảng LopGiang và bảng MonHoc: đưa khoá chính (maMH) của
bảng MonHoc vào bảng LopGiang .
Liên kết n – n: Tạo ra một bảng kết nối, khoá chính của bảng kết nối là khoá
bội hợp từ 2 khoá chính của 2 bảng.
Ta thấy giữa lớp MonHoc và Nganh có liên kết n –n. Tạo ra một bảng
kết nối MonHoc-Nganh. Đưa khoá chính của hai bảng trên vào bảng
mới.
Giữa lớp SinhVien và LopGiang, lớp GiangVien với LopGiang có
kiểu liên kết n-n, ta tạo ra một bảng liên kết chung DangKi
Với quan hệ kết nhập được mô hình hoá như một liên kết bình thường.
3. Ánh xạ mối liên quan khái quát hoá
Dùng một khoá chung cho mọi bảng trong cùng một phả hệ kế thừa.
4. Cơ sở dữ liệu của hệ thống Đăng ký môn học theo tín chỉ
Gồm các bảng sau:
a. Bảng TaiKhoan
Tên thuộc tính Kiểu dữ liệu Ghi chú
maTaikhoan text Khoá chính
tenDN text
matKhau text
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
- 55 -
đơn.
Tên thuộc tính Kiểu dữ liệu Ghi chú
maTaiKhoan text Khoá chính
maKhoaHoc text
maKhoa text
maNganh text
Stt_SV Int
tenSV text
ngaySinh date
gioiTinh text
soDT Int
email text
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.
Tên thuộc tính Kiểu dữ liệu Ghi chú
maTaiKhoan text Khoá chính
maKhoa text
maNN text
stt_GV Int
tenGv text
ngaySinh date
gioiTinh text
soDT Int
email text
d. Bảng MonHoc
Tên thuộc tính Kiểu dữ liệu Ghi chú
- 56 -
maMH text Khoá chính
maNN text
tenMH text
soTC Int
loaiMH text
hocKy text
e. Bảng LopGiang
Tên thuộc tính Kiểu dữ liệu Ghi chú
maLop text Khoá chính
maMH text
lich text
diaDiem text
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:
Tên thuộc tính Kiểu dữ liệu Ghi chú
taiKhoanDN text Khoá chính
maLop text Khoá chính
h. Bảng Khoa
Tên thuộc tính Kiểu dữ liệu Ghi chú
maKhoa text Khoá chính
- 57 -
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
XI. Thiết kế giao diện
1. Trang chủ
- 58 -
2. Màn hình đăng nhập
3. Trang đăng ký hoc phần
4. Trang thống kê
- 59 -
TÀI LIỆU THAM KHẢO
[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
- 60 -
Các file đính kèm theo tài liệu này:
- bai_tieu_luan_pttk_ht_uml_thang_lam_ha_trung_huyen__8225.pdf