nếu là tìm theo tên, theo mã học sinh thì nhập dữ liệu còn ngược lại nếu tìm theo học kì, theo môn học thì có dữ liệu sẵn cho ta chọn... Thông báo giáo viên không tồn tại nếu không có tr
Trang 1TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BÀI BÁO CÁO NGÔN NGỮ
Giáo viên hướng dẫn:
ThS BÙI ĐĂNG HÀ PHƯƠNG
Trang 2Hòa An, 26 tháng 12 năm 2020
Trang 43.3 Bảng mô tả thuộc tinh 25
3.3.11 Bảng mô tả thuộc tinh của class PHUONG/XA 313.3.12 Bảng mô tả thuộc tinh của class QUAN/HUYEN 313.3.13 Bảng mô tả thuộc tinh của class THANHPHO/TINH 32
3.4.2 Bảng mô tả phương thức của class GIAO_VIEN 353.4.3 Bảng mô tả phương thức của class TAI_KHOAN 37
3.4.8 Bảng mô tả phương thức của class PHUONG/XA 453.4.9 Bảng mô tả phương thức của class QUAN/HUYEN 473.4.10 Bảng mô tả phương thức của class THANHPHO/TINH 49
3.4.13 Bảng mô tả phương thức của class THUOC_LOP 52
Trang 5CHƯ
Trang 65.2 Hướng phát triển 66
Trang 7CHƯƠNG 1: MÔ TẢ HỆ THỐNG
1.1 Giới thiệu hệ thống
Ngày nay với sự phát triển không ngừng của khoa học máy tính Một số công việclàm bằng thủ công vừa tốn công, tốn sức lại hao tốn quá nhiều thời gian dần dần đượcchuyển sang hệ thống tự động hoá, đem lại sự thuận tiện trong công việc cho con ngườicũng như góp phần làm cho cơ quan hoạt động mang tính chuyên nghiệp và hiệu quả hơn
Từ nhu cầu thực tế đó đã xuất hiện nhiều phần mềm và công cụ để quản lý và xử lý cáccông việc thay cho con người
Trong quản lý giáo dục, với số lượng học sinh ngày càng tăng thì việc tính điểm vàxếp loại học tập cho học sinh vào cuối mỗi học kỳ, năm học ngày càng chiếm nhiều thờigian và tốn nhiều công sức của bộ phận giáo vụ và giáo viên phụ trách môn học Do đó,xây dựng phần mềm quản lý điểm cho một trường học nói chung và trường trung học phổthông nói riêng là hết sức cần thiết nhằm tiết kiệm thời gian, công sức của giáo viên đồngthời tăng độ chính xác trong công tác tính điểm và xếp loại học sinh Đây là một công cụ
hỗ trợ cần thiết và hiệu quả, giúp cho công việc dễ dàng hơn, tiết kiệm được thời gian vàcông sức đáng kể
Xuất phát từ nhu cầu thiết thực trên, nhóm em đã thiết kế, xây dựng “Website quản lýđiểm THPT”
Tìm điểm theo tên
Tìm điểm theo mã học sinh
Tìm điểm theo học kỳ năm học
Tìm điểm theo tên học sinh
Tìm điểm theo mã học sinh
Tìm điểm theo lớp
Tìm điểm theo môn
Trang 8− Thêm điểm.
− Sửa điểm
− Xóa điểm
Trang 9− Thống kê:
Thống kê số lượng học sinh điểm giỏi
Thống kê số lượng học sinh điểm khá
Thống kê số lượng học sinh điểm trung bình
Thống kê số lượng học sinh có điểm dưới trung bình
Tìm học sinh theo tên
Tìm theo học sinh theo lớp
− thêm học sinh
− Xóa học sinh
− Sửa học sinh
− Tìm giáo viên:
Tìm giáo viên theo mã
Tìm giáo viên theo tên
Tìm giáo viên theo môn
− Thêm giáo viên
− Sửa giáo viên
− Xóa giáo viên
Trang 10− Xóa học kì năm học.
− Thống kê:
Thống kê số lượng học sinh giỏi
Thống kê số lượng học sinh khá
Thống kê số lượng học sinh trung bình
Thống kê số lượng học sinh có dưới trung bình
Trang 112.1.2 Use case diagram của tác nhân giáo viên
Trang 122.1.3 Use case diagram của tác nhân admin
Trang 132.2 Mô tả bằng văn bản các use cases
2.2.1 Use case “Tìm điểm”
Tên Use case: Tìm điểm ID: TĐ-01
Actor chính: Học sinh, Giáo viên Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình
Các thành phần tham gia và mối quan tâm: Học sinh, Giáo viên muốn tìm điểm
theo tên, tìm theo mã học sinh, tìm theo học kì năm học, tìm theo môn và phần mở rộng là có thể in điểm
Mô tả tóm tắt: Khi có yêu cầu cần tra cứu điểm thì chức năng tìm điểm được sử
dụng để tìm điểm theo nhiều lựa chọn khác nhau (tìm theo tên, tìm theo mã họcsinh, tìm theo học kì năm học, tìm theo môn và chức năng mở rộng là in điểm saukhi tìm)
Trigger: Có yêu cầu thực hiện tìm điểm.
+Generalization(tổng quát hóa): Tìm điểm theo tên, tìm điểm theo mã học sinh, tìm
điểm theo học kì năm học, tìm theo môn
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng tìm điểm
2.Các tùy chọn được hiện ra:
Sub 1: Tìm điểm theo tên Sub 2: Tìm theo mã học sinh Sub 3: Tìm theo học kì năm học Sub 4: Tìm theo
môn
3.Hiển thị ra thông báo yêu cầu nhập hoặc chọn dữ diệu nếu là tìm theo tên, theo mã học sinh thì nhập dữ liệu còn ngược lại nếu tìm theo học kì, theo môn học thì có dữ liệu sẵn cho ta chọn
Trang 14Các luồng sự kiện con:
Sub1: Tìm điểm theo tên
1. Nhập tên cần tra điểm
2. Kiểm tra thông tin nhập vào
3. Thông báo lỗi nếu tên không có trong cơ sở dữ liệu và quay lại Sub1-1 ngược lại đến bước 5
Sub2: Tìm theo mã học sinh
Trang 151. Nhập mã cần tra điểm
2. Kiểm tra thông tin nhập vào
3. Thông báo lỗi nếu tên không có trong cơ sở dữ liệu và quay lại Sub2-1
ngược lại đến bước 5
Sub 3: Tìm điểm theo môn
1. Chọn môn học cần tra điểm
2.2.2 Use case “Tìm hạnh kiểm”
Tên Use case: Tìm hạnh kiểm ID: THK-01
Actor chính: Học sinh, giáo
viên, admin Mức độ cần thiết: Bắt buộc Phân loại: Trung bình
Các thành phần tham gia và mối quan tâm: Học sinh, giáo viên, admin muốn biết
hạnh kiểm của mình hoặc học sinh mình đang dạy
Mô tả tóm tắt: Khi có yêu cầu muốn biết hạnh kiểm của học sinh thì chức năng tìm
hạnh kiểm được học sinh và giáo viên sử dụng
Trigger: khi có yêu cầu muốn biết hạnh kiểm
Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Học sinh, giáo viên
+Include(bao gồm): Đăng nhập
+Extend(mở rộng):
+Generalization(tổng quát hóa):
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng tìm hạnh kiểm
2.Nhập các thông tin
Trang 16Sub 1: Nhập thông tin
3.Hiển thị hạnh kiểm ra màn hình
4.Kết thúc một sự kiện
Các luồng sự kiện con (Subflows):
Sub1: Nhập thông tin
1. Nhập tên học sinh cấn tìm hạnh kiểm
2. Kiểm tra lại thông tin nhập
3. Nếu thông tin nhập đung thì sang bước 3 ngược lại quay lại Sub1-1
Trang 172.2.3 Use case “Tìm giáo viên”
Tên Use case: Tìm giáo viên ID: TGV-01
Actor chính: Học sinh, admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
Học sinh, admin muốn tìm giáo viên để biết giáo viên đó dạy môn học và lớp nào.
Mô tả tóm tắt:
Khi yêu cầu biết thông tin một giáo viên nào đó dạy môn học và dạy lớp nào thì thực hiện chức năng tìm giáo viên được học sinh và admin sử dụng
Trigger: Có yêu cầu thực hiện tìm một giáo viên
Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Học sinh, admin
+Include(bao gồm): Đăng nhập
+Extend(mở rộng):
+Generalization(tổng quát hóa): Tìm giáo viên theo tên, tìm giáo viên theo mã, tìm
giáo viên theo môn
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng tìm giáo viên
2.Chọn chức năng cần tinh
chỉnh Sub 1: Tìm giáo viên theo tên Sub 2: Tìm
giáo viên theo mã
Sub 3: Tìm giáo viên theo môn
3.Hiển thị kết quả ra màn hình
4.Kết thúc một sự kiện
Trang 18Các luồng sự kiện con (Subflows):
Sub1: Tìm giáo viên theo tên
4. Nhập tên giáo viên
5. Kiểm tra tên giáo viên
6. Thông báo giáo viên không tồn tại nếu không có trong danh sách và quay lại bước Sub1-1 hoặc tùy chọn sang bước 4, ngược lại đến bước 3
Sub2: Tìm giáo viên theo mã
4. Nhập mã giáo viên
5. Kiểm tra mã giáo viên
6. Thông báo mã giáo viên không tồn tại nếu không có trong danh sách và quay lại bước Sub2-1 hoặc tùy chọn sang bước 4, ngược lại đến bước 3
Sub 3: Tìm giáo viên theo môn
1. Nhập môn học
2. Kiểm tra thông tin môn học
1 Thông báo mã giáo viên không tồn tại nếu không có trong danh sách và quay lại bước Sub3-1 hoặc tùy chọn sang bước 4, ngược lại đến bước 3
Trang 192.2.4 Use case “Tìm lớp”
Tên Use case: Tìm lớp học ID: TL-01
Actor chính: Học sinh, Giáo
viên, admin Mức độ cần thiết: Bắt buộc Phân loại: Trung bình
Các thành phần tham gia và mối quan tâm:
Học sinh, Giáo viên, admin muốn biết danh sách lơp học và giáo viên chủ
nhiệm của một lớp nào đó
Mô tả tóm tắt:
Khi có yêu cầu muốn biết thông tin của một lớp học nào đó thì chọn chức năng tìm lớp được học sinh, giáo viên, admin sử dụng
Trigger: Có yêu cầu tìm thông tin của một lớp học
Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Học sinh, giáo viên, admin
+Include(bao gồm): Đăng nhập
+Extend(mở rộng):
+Generalization(tổng quát hóa):
Luồng xử lý bình thường của sự kiện:
2. Kiểm tra thông tin nhập vào
3. Thông báo không có lớp học nếu lớp học đó không tồn tại và trở lại bước
Sub1-1 hoặc tùy chọn sang bước 4, ngược lại đến bước 3
2.2.5 Use case “Tìm môn học”
Tên Use case: Tìm môn học ID: TMH-01
Actor chính: Học sinh, admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
Học sinh, admin muốn tìm môn học trong chương trình dạy
Trang 20Mô tả tóm tắt:
Khi có yêu cầu cần tìm kiếm môn học trong chương trình giảng dạy thì chọn chức năng tìm môn học được học sinh và admin sử dụng
Trigger: Có yêu cầu xem môn học trong chương trình giảng dạy
Kiểu sự kiện: external
Các mối quan hệ:
Trang 21+Association (kết hợp): Học sinh, admin
+Include (bao gồm): Đăng nhập
+Extend (mở rộng):
+Generalization (tổng quát hóa):
Luồng xử lý bình thường của sự kiện:
2. Kiểm tra thông tin nhập
3. Thông báo lỗi nếu môn học có trong chương trình giảng dạy và quay lại bước Sub1-1 hoặc tùy chọn bước 3, ngược lại sang bước 2
2.2.6 Use case “Quản lý hạnh kiểm”
Tên Use case: Quản lý hạnh kiểm ID: QLHK-01
Actor chính: Giáo viên Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
Giáo viên muốn thêm, sửa, xóa hạnh kiểm trong danh sách học sinh
Mô tả tóm tắt:
Người sử dụng khi có yêu cầu tinh chỉnh xếp loại hạnh kiểm, thì chọn chức năng quản lý hạnh kiểm
Trigger: Có yêu cầu tinh chỉnh kết quả hạnh kiểm
Kiểu sự kiện: external
Trang 22hạnh kiểm Sub 3: Xóa
hạnh kiểm
3.Thông báo xác nhận thực hiện việc cập nhật
Sub 4: Thông báo xác nhận
4.Cập nhật thông tin mới vào cơ sở dữ liệu
5.Kết thúc một sự kiện
Các luồng sự kiện con
(Subflows): Sub1: Thêm
hạnh kiểm
7 Chọn học sinh cấn thêm hạnh kiểm
Trang 238. Nhập thông tin
9. Nhấn nút lưu lại hoặc hủy bỏ
10.Nếu nhấn nút lưu lại thì chuyển sang bước 3, ngược lại thì trở lại bước Sub1-2 hoặc tùy chọn đến bước 5
Sub 2: Sửa hạnh kiểm
7. Chọn học sinh cần sửa
8. Nhập thông tin cần sửa
9. Nhấn nút lưu lại hoặc hủy bỏ
10.Nếu nhấn nút lưu lại thì chuyển sang bước 3, ngược lại nếu hủy bỏ thì trở lại bước Sub2-2 hoặc tùy chọn đến bước 5
Sub 3: Xóa hạnh kiểm
1. Chọn học sinh cần xóa hạnh kiểm
2. Nhấn nút xóa
3. Chuyển sang bước 3
Sub 4: Thông báo xác nhận
1. Nếu chấp nhận thì hệ thống sẽ chuyển sang bước 4
2. Ngược lại nếu không chấp nhận thì hệ thống sẽ chuyển sang bước 5
Luồng luân phiên/đặc biệt (Alternate/Exceptional flows):
- Sub 2-1 và Sub 3-1: Quản lý hạnh kiểm thực hiện tìm kiếm học sinh và
hiển thị kết quả tìm kiếm và cho phép chọn một học sinh từ kết quả tìm
- Bước 4: Trong quá trình cập nhật dữ liệu nếu có sự cố mất điện xảy ra thì
dữ liệu sẽ không được cập nhật
2.2.7 Use case “Quản lý giáo viên”
Tên Use case: Quản lý giáo viên ID: QLGV-01
Actor chính: Admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
Admin muốn Tìm, thêm, sửa, xóa giáo viên cho danh sách giáo viên của
trường
Mô tả tóm tắt:
Khi có yêu cầu tinh chỉnh danh sách giáo viên, thì chức năng quản lý giáo viên được admin sử dụng để thực hiện các chức năng (tìm, thêm, sửa, xóa giáo viên)
Trigger: Có yêu cầu Thực hiện tinh chỉnh một giáo viên
Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Admin
Trang 24+Include(bao gồm): Đăng nhập, tìm giáo viên
+Extend(mở rộng):
+Generalization(tổng quát hóa): tìm giáo viên theo tên, tìm giáo viên theo mã, tìm
giáo viên theo môn, thêm giáo viên, sửa giáo viên, xóa giáo viên
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng quản lý giáo viên
2.Chọn chức năng cần tinh chỉnh
Sub 1: Tìm giáo viên Sub 2: Thêm giáo viên
Trang 25Sub 3: Sửa giáo viên Sub 4: Xóa giáo viên
3.Thông báo xác nhận thực hiện việc cập nhật
Sub 5: Thông báo xác nhận
4.Cập nhật thông tin mới vào cơ sở dữ liệu
5.Kết thúc một sự kiện
Các luồng sự kiện con (Subflows):
Sub1: Tìm giáo viên
11.Nhập thông tin cần tìm
12.Kiểm tra thông tin nhập
13.Thông báo lỗi nếu không có giáo viên trong danh sách trường và quay lại
bước Sub1-1 ngược lại qua bước 4
14.Hiển thị kết quả ra màn hình
15.Sang bước 5 hoặc tùy chọn trở lại bước 2
Sub 2: Thêm giáo viên
11.Nhập thông tin giáo viên cần thêm
12.Kiểm tra thông tin nhập
13.Thông báo bỏ trống nếu nhập không hết thông tin và quay lại bước Sub2-1, ngược lại qua bước Sub2-4
14.Nhấn nút lưu lại hoặc hủy bỏ
15.Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trởlại bước 2
Sub 3: Sửa giáo viên
1.Chọn giáo viên cần sửa
2.Nhập thông tin cần hiệu chỉnh
3.Kiểm tra thông tin nhập vào
4.Thông báo lỗi nếu bỏ trống và trở lại bước Sub3-2, ngược lại qua bước Sub 3-5
5.Nhấn nút lưu lại hoặc hủy bỏ
6.Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trởlại bước 2
Sub 4: Xóa giáo viên
1.Chọn giáo viên cần xóa
2.Chọn nút xóa
3.Sang bước 3
Sub 5: Thông báo xác nhận
1.Nếu chấp nhận thì nhấn nút thì hệ thống sẽ thực hiện bước 4
2.Nếu không chập nhận thì hệ thống sẽ chuyển sang bước 5
Luồng luân phiên/đặc biệt (Alternate/Exceptional flows):
Trang 26- Sub 3-1 và Sub 4-1: Quản lý giáo viên thực hiện tìm kiếm học sinh và hiển
thị kết quả tìm kiếm và cho phép chọn một giáo viên từ kết quả tìm
- Bước 4: Trong quá trình cập nhật dữ liệu nếu có sự cố mất điện xảy ra thì
dữ liệu sẽ không được cập nhật
2.2.8 Use case “Quản lý học kỳ năm học”
Tên Use case: Quản lý học kì năm
học
ID: QLHKNH-01 Actor chính: Admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình
Trang 27Các thành phần tham gia và mối quan
Trigger: Có yêu cầu tinh chỉnh học kì năm học trong danh sách giảng dạy của trường Kiểu sự kiện: external
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng quản lý học kì năm học
3.Thông báo yêu cầu xác nhận thực hiện cập nhật
Sub 4: Thông báo xác nhận
4.Cập nhật thông tin mới vào cơ sở dữ liệu
5.Kết thúc một sự kiện
Trang 28Các luồng sự kiện con (Subflows):
Sub 1: Thêm học kì năm học
16.Nhập học kì năm học cần thêm
17.Kiểm tra thông tin nhập
18.Thông báo lỗi nếu bỏ trống hoặc nhập không đúng thông tin và quay lại bướcSub1-1, ngược lại qua bước Sub1-4
19.Nhấn nút lưu lại hoặc hủy bỏ
20.Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trởlại bước 2
Sub 2: Sửa học kì năm học
7.Chọn học kì năm học cần sửa
8.Nhập thông tin cần hiệu chỉnh
9.Kiểm tra thông tin nhập vào
10. Thông báo lỗi nếu bỏ trống hoặc nhập không đúng thông tin và trở lại bước Sub2- 2, ngược lại qua bước Sub2-5
11. Nhấn nút lưu lại hoặc hủy bỏ
12. Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trở lại bước 2
Sub 3: Xóa học kì năm học
4.Chọn học kì năm học cần xóa
5.Chọn nút xóa
6.Sang bước 3
Sub 4: Thông báo xác nhận
3.Nếu chấp nhận thì nhấn nút thì hệ thống sẽ thực hiện bước 4
4.Nếu không chập nhận thì hệ thống sẽ chuyển sang bước 5
Trang 29Luồng luân phiên/đặc biệt (Alternate/Exceptional flows):
- Sub 2-1 và Sub 3-1: Quản lý học kì năm học thực hiện tìm kiếm học kì
năm học và hiển thị kết quả tìm kiếm và cho phép chọn một một học kì năm học từ kết quả tìm
- Bước 4: Trong quá trình cập nhật dữ liệu nếu có sự cố mất điện xảy ra thì
dữ liệu sẽ không được cập nhật
2.2.9 Use case “Quản lý lớp học”
Tên Use case: Quản lý lớp học ID: QLLH-01
Actor chính: Admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
Admin muốn tìm, thêm, sửa, xóa lớp học trong danh sách lớp học của
Trigger: Có yêu cầu tinh chỉnh lớp học trong danh sách lớp học của trường.
Kiểu sự kiện: external
Sửa lóp học Sub 4: Xóa lớp học
3.Thông báo yêu cầu xác nhận thực hiện cập nhật
Sub 4: Thông báo xác nhận
4.Cập nhật thông tin mới vào cơ sở dữ liệu
Trang 305.Kết thúc một sự kiện.
Các luồng sự kiện con (Subflows):
Sub1: Tìm lớp học
16.Nhập thông tin cần tìm
17.Kiểm tra thông tin nhập
18.Thông báo lỗi nếu không có lớp học trong danh sách lớp học của trường và quay lại bước Sub1-1 ngược lại qua bước 4
19.Hiển thị kết quả ra màn hình
20.Sang bước 5 hoặc tùy chọn trở lại bước 2
Sub 2: Thêm lớp học
21.Nhập lớp cần thêm
Trang 3122.Kiểm tra thông tin nhập
23.Thông báo lỗi nếu bỏ trống thông tin quan trọng và quay lại bước Sub2-1, ngược lại qua bước Sub2-4
24.Nhấn nút lưu lại hoặc hủy bỏ
25.Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trởlại bước 2
Sub 3: Sửa lớp học
13. Chọn lớp học cần sửa
14. Nhập thông tin cần hiệu chỉnh
15. Kiểm tra thông tin nhập vào
16. Thông báo lỗi nếu bỏ trống thông tin quan trọng và trở lại bước Sub3-2, ngược lại qua bước Sub3-5
17. Nhấn nút lưu lại hoặc hủy bỏ
18. Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trở lại bước 2
Sub 4: Xóa lớp học
7.Chọn lớp học cần xóa
8.Chọn nút xóa
9.Sang bước 3
Sub 5: Thông báo xác nhận
5.Nếu chấp nhận thì nhấn nút thì hệ thống sẽ thực hiện bước 4
6.Nếu không chập nhận thì hệ thống sẽ chuyển sang bước 5
Luồng luân phiên/đặc biệt (Alternate/Exceptional flows):
- Sub 3-1 và Sub 4-1: Quản lý lớp học thực hiện tìm kiếm lớp học và hiển thị
kết quả tìm kiếm và cho phép chọn một lớp học từ kết quả tìm
- Bước 4: Trong quá trình cập nhật dữ liệu nếu có sự cố mất điện xảy ra thì
dữ liệu sẽ không được cập nhật
2.2.10 Use case “Quản lý môn học”
Tên Use case: Quản lý môn học ID: QLMH-01
Actor chính: Admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan
Trang 32Trigger: Có yêu cầu tinh chỉnh môn học trong danh sách giảng dạy Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Admin
+Include(bao gồm): Đăng nhập, tìm môn học
+Extend(mở rộng):
Trang 33+Generalization(tổng quát hóa): Tìm môn học, Thêm môn học, sửa môn học, xóa
môn học
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng quản lý môn học
2.chọn chức năng cần tinh chỉnh
Sub 1: Tìm môn học Sub 2: Thêm môn học Sub 3:
Sửa môn học Sub 4: Xóa môn học
3.Thông báo yêu cầu xác nhận thực hiện cập nhật
Sub 4: Thông báo xác nhận
4.Cập nhật thông tin mới vào cơ sở dữ liệu
5.Kết thúc một sự kiện
Các luồng sự kiện con (Subflows):
Sub1: Tìm môn học
21.Nhập thông tin cần tìm
22.Kiểm tra thông tin nhập
23.Thông báo lỗi nếu không có môn học trong danh sách giảng dạy và quay lại bước Sub1- 1 ngược lại qua bước 4
24.Hiển thị kết quả ra màn hình
25.Sang bước 5 hoặc tùy chọn trở lại bước 2
Sub 2: Thêm môn học
26.Nhập môn cần thêm
27.Kiểm tra thông tin nhập
28.Thông báo lỗi nếu môn học không có trong CTĐT và quay lại bước Sub2-1, ngược lại qua bước Sub2-4
29.Nhấn nút lưu lại hoặc hủy bỏ
30.Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trởlại bước 2
Sub 3: Sửa môn học
19. Chọn môn học cần sửa
20. Nhập thông tin cần hiệu chỉnh
21. Kiểm tra thông tin nhập vào
22. Thông báo lỗi nếu bỏ trống hoặc sai quy định của CTĐT và trở lại bước Sub3-2, ngược lại qua bước Sub3-5
23. Nhấn nút lưu lại hoặc hủy bỏ
24. Nếu chọn lưu lại thì tiếp tục với bước 3, ngược lại thì bước 5 hoặc tùy chọn trở lại bước 2
Sub 4: Xóa môn học
10. Chọn môn học cần xóa
Trang 3411. Chọn nút xóa
12. Sang bước 3
Sub 5: Thông báo xác nhận
7.Nếu chấp nhận thì nhấn nút thì hệ thống sẽ thực hiện bước 4
8.Nếu không chập nhận thì hệ thống sẽ chuyển sang bước 5
Luồng luân phiên/đặc biệt (Alternate/Exceptional flows):
- Sub 3-1 và Sub 4-1: Quản lý môn học thực hiện tìm kiếm môn học và hiển
thị kết quả tìm kiếm và cho phép chọn một môn học từ kết quả tìm
- Bước 4: Trong quá trình cập nhật dữ liệu nếu có sự cố mất điện xảy ra thì dữ
liệu sẽ
Trang 35không được cập nhật.
2.2.11 Use case “Quản lý thống kê”
Tên Use case: Thống kê ID: TK-01
Actor chính: admin Mức độ cần thiết: Bắt buộc
Phân loại: Trung bình Các thành phần tham gia và mối quan tâm:
admin muốn thống kê số lượng học sinh giỏi, khá, trung bình, dưới trung bình
và in thống kê đó lại
Mô tả tóm tắt:
Khi có yêu cầu muốn biết kết quả học tập đạt được của học sinh trường mình thì chọn chức năng thống kê được admin sử dụng (thống kê học sinh giỏi, khá, trung bình, dưới trung bình)
Trigger: Có yêu cầu thực hiện thống kê
Kiểu sự kiện: external
Các mối quan hệ:
+Association (kết hợp): Admin
+Include(bao gồm): Đăng nhập
+Extend(mở rộng): In thống kê
+Generalization(tổng quát hóa): Thống kê số lượng học sinh giỏi, thống kê số
lượng học sinh khá, thống kê số lượng học sinh trung bình, thống kê số lượng học sinh dưới trung bình
Luồng xử lý bình thường của sự kiện:
1.Chọn chức năng thống kê
2.Chọn chức năng cần tinh chỉnh
Sub 1: Thống kê số lượng học sinh giỏi Sub 2: Thống kê số lượng học sinh khá Sub 3: Thống kê số lượng học sinh trung bình Sub 4: Thống kê số lượng học sinh dưới trung bình
3.Hiển thị kết quả ra màn hình
Sub 5: In thống kê
4.Kết thúc một sự kiện
Trang 36Các luồng sự kiện con (Subflows):
Sub1: Thống kê số lượng học
sinh giỏi
26.Chọn danh mục (ví dụ: lớp, trường, khối)
27.Lấy dữ liệu từ cơ sở dữ liệu
28.Tính toán dữ liệu
29.Trở về bước 3
Sub2: Thống kê số lượng học sinh khá
31.Chọn danh mục (ví dụ: lớp, trường, khối)
32.Lấy dữ liệu từ cơ sở dữ liệu
33.Tính toán dữ liệu
34.Trở về bước 3
Sub 3: Thống kê số lượng học sinh trung bình
Trang 371. Chọn danh mục (ví dụ: lớp, trường, khối)
2. Lấy dữ liệu từ cơ sở dữ liệu
3. Tính toán dữ liệu
4. Trở về bước 3
Sub 4: Thống kê số lượng học sinh dưới trung bình
1. Chọn danh mục (ví dụ: lớp, trường, khối)
2. Lấy dữ liệu từ cơ sở dữ liệu
3. Tính toán dữ liệu
4. Trở về bước 3
Sub 5: In thống kê
1. chọn in hoặc không in thống kê
2. Tùy chọn sang bước 4 hoặc trở lại bước 2
Trang 383.1 Class diagram
CHƯƠNG 3: CLASS DIAGRAMS
Trang 403.2 Logical data model ảng mô tả thuộc tính