Xây dưng hệ thống chương trình quản lý giảng dạy tại trường đại học kỹ thuật đà nẵng
Trang 1CHƯƠNG II:
THIẾT KẾ HỆ THỐNG CHƯƠNG TRÌNH QUẢN LÝ GIẢNG DẠY TẠI TRƯỜNG ĐẠI
HỌC KỸ THUẬT
I PHÂN TÍCH CÁC LUỒNG DỮ LIỆU:
Sau thời gian thực tập tốt nghiệp tại trường Đại học Kỹ thuật Đà nẵng, nhờ sự hướng dẫn của giáo viên hướng dẫn, sự hướng dẫn tận tụy của các bộ Phòng đào tạo tại trường Đại học Kỹ thuật Đà nẵng Trong thời gian thực tập tốt nghiệp, đề tàì được hội đồng bảo vệ thực tập đồng ý cho phát triển đề tài thành đề tài tốt nghiệp
Qua các cuộc phỏng vấn, nói chuyên, nghiên cứu các hồ sơ nội bộ của nhà trường trong công tác quản lý giảng dạy Các luồng luân chuyển thông tin trong công tác quản lý giảng dạy tại đây như sau
I.1 Sơ đồ luân chuyển thông tin:
Để thiết kế các dữ liệu vào (Input), và dữ liệu ra (Output)
được tối ưu và có tính chính xác
Sơ đồ dòng dữ liệu:
Sơ đồ dòng dữ liệu cho ta biết sự trao đổi thông tin giữa các nguồn và đích Từ hiệu trưởng, đến phòng đào tạo qua các khoa và giáo viên giảng dạy
Hiệu trưởng
Phòng đào tạo
Các khoa
Giáo viên
1
2
3
6
7 8
9
10 -11
Trang 2I.2 Bảng tóm tắc các dòng dữ liệu:
1
2
3
4
5
6
7
8
9
10
11
Lập kế hoạch đào tạo Gởi kế hoạch học tập Gởi báo giảng
Đăng ký môn học Đăng ký báo giảng Phân công giảng dạy Phân công công tác Phân lịch thi
Gởi kết quả học tập Gởi kết quả học tập các lớp trong khoa Gởi kết quả học tập cuối khóa
Sơ đồ dòng dữ liệu đầy đủ thông tin:
ST
1 Lập kế hoạch
học tập
(KHHT)
Khoa, Namhoc, Hocky, Malop, Khoahoc, Sotuanhoc - Từ tuần đến tuần,
Sotuanthi - Từ tuần
đến tuần, Sotuantt - Từ tuần
đến tuần,
Mamonhoc , Tenmonhoc,
SotietLT, Btlon, Doan, TN/TH, Ghichu
Hiệu trưởng Cáckhoa
2 Gởi kế hoạch
học tập
(GKHHT)
khoa Phòngđào
tạo
đào tạo
Các khoa
4 Đăng ký môn
dạy {Tenmonhoc}{Btlon, Doan}
{HotenGV, Chucdanh}
Giáo viên Cáckhoa
5 Đăng ký báo {Namhoc, Hocky, Các Phòng
Trang 3giảng Khoahoc}
{Malop}, SoSV, {Mamonhoc, Tenmonhoc,SotietLT}, {Btlon, Doan, ,TN/TH}, MaGV, Diadiem ,HotenGV, Chucdanh, Ghichu}
khoa đào
tạo
6 Phân công giảng
dạy
(PCGD)
{Namhoc, Hocky, Malop,SoSV}, {Sotuanhoc -Từ tuần đến tuần}
{HotenGV, Chucdanh}
{Tenmonhoc, SotietLT}
Phòng đào tạo
Các khoa
7 Phân công công
tác [PCGD]{Diadiem} Phòngđào
tạo
Giáo viên
8 Phân lịch thi {Namhoc, Hocky, Malop},
Thời gian thi - Sotuanthi - Từ tuần đến tuần {Diadiem}
Phòng đào tạo
Giáo viên
9 Gởi kết quả
học tập
(KQHT)
{Malop, Tenmonhoc, SotietLT},
(gởi kết quả thi)
Giáo viên Cáckhoa
10 Gởi kết quả
học tập các
lớp trong khoa
khoa Phòngđào
tạo
11 Gởi kết quả
học tập cuối
khóa
Bảng điểm cuối khóa, kết quả tốt nghiệp Phòngđào
tạo
Hiệu trưởn g Trong mỗi dòng thông tin các dữ liệu có giá trị lặp lại nhiều lần thì được đặt trong dấu ngoặc {}, các dữ liệu đã có mặt ở một dòng thông tin khác trước đó thì được đặt trong cặp ngoặc []
II PHÂN TÍCH DỮ LIỆU:
II.1 Phân tích dữ liệu:
Phân tích dữ liệu:
- Thanh lọc các dữ liệu đồng nghĩa và nhiều nghĩa từ danh sách dữ liệu thô được thu thập qua các cuộc phỏng vấn và các phiếu thu được
- Sau khi thanh lọc các dữ liệu đồng nghĩa và nhiều nghĩa từ danh sách từ danh sách dữ liệu thô đã được thu thập
Ta đi xây dựng từ điển dữ liệu - Data dictionary - là tập hợp từ vựng chính xác mà mọi người tham gia dự án đều đồng ý
Trang 4 Các bước phân tích dữ liệu:
Việc phân tích dữ liệu được thực hiện như sau:
Sơ đồ phân tích dữ liệu:
Các bước phân tích dữ liệu:
- Định nghĩa phạm vi dữ liệu hiệu chỉnh
- Xác định các loại thực thể cho mỗi phạm vi dữ liệu
- Xác định mối quan hệ giữa các loại thực thể
- Rút ra mô hình thực thể cho mỗi phạm vi
- Xác định thuộc tính cho mỗi loại thực thể.
- Chuẩn hóa các thuộc tính cho những loại thực thể.
- Tổng hợp các mô hình thực thể để rút ra một mô hình thực thể tích hợp cho tổ chức
Dữ liệu thô
1 Xử lý dữ liêu
sơ cấp
2 Thanh lọc dữ
liệu
3 Xây dựng từ điển dữ liệu
Dữ liệu sơ cấp
Dữ liệu đã thanh lọc
Từ điển dữ liệu
Các công thức tính toán
Tính thích đáng của dữ liệu tính toán
Loại bỏ dữ liệu đồng nghĩa và nhiều nghĩa
Trang 5- Kiểm tra tính chính xác của mô hình thực thể so với các chức năng và quá trình được yêu cầu
- Xác định lại những thực thể và những mối quan hệ
- Định nghĩa lại nếu không chính xác
II.2 Thanh lọc dữ liệu:
Qua quá trình phân tích các dữ liệu, loại bỏ các dữ liệu dư thừa và dữ liệu lặp Thanh lọc dữ liệu là một bước rất quan trọng cho việc xây dựng từ điển dữ liệu Loại bỏ những dữ liệu không phù hợp Thanh lọc dữ liệu được thực hiện ở hai dạng dưới đây:
- Loại bỏ các dữ liệu đồng nghĩa: là một dữ liệu mà có hai tên gọi khác nhau
- Những dữ liệu nhiều nghĩa: là dữ liệu dùng một tên chỉ các đối tượng, sự kiện khác nhau
Từ đó, ta rút ra được danh sách các dữ liệu sơ cấp Chúng được thu thập từ các cuộc phỏng vấn và tư liệu được lấy tại Phòng đào tạo và các khoa trong trường
Trang 6 Danh sách dữ liệu sơ cấp:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Namhoc Hocky Khoahoc Makhoa Khoa Malop SoSV Phong Mamonhoc Tenmonhoc SotietLT Btlon Tn_Th MaDD Điadiem MaGV TenGV Chucdanh Ghichu Thu Tiet MaDA Tenda TuanBD TuanKT Bdthi Ktthi Bdthuctap Ktthuctap Tungay
Denngay
Năm học Học kỳ Khóa học Mã khoa Khóa Mã lớp học Số sinh viên Phòng
Mã môn học Tên môn học Tổng số tiết Số tiết bài tập lớn Số tiết thí nghiệm / thực hành
Mã địa điểm Địa điểm học Mã giáo viên Tên giáo viên giảng dạy Chức danh
Ghi chú Thứ Tiết Mã đồ án Tên đồ án Tuần bắt đầu Tuần kết thúc Bắt đầu thi Kết thúc thi Bắt đầu thực tập Kết thúc thực tập Ngày đi công tác Ngày công tác về
II.3 Xây dựng từ điển dữ liệu:
Sau khi thanh lọc dữ liệu, cần phải giữ lại những dữ liệu thật sự có ích, đó là nguyên lý thích đáng, và giữ lại những dữ liệu không thể được xác định bởi những dữ liêu sơ cấp có mặt trong cơ sở dữ liệu, đó là những dữ liệu tính toán
Trang 7II.3.1 Từ điển dữ liệu:
Từ điển dữ liệu: là một danh sách các dữ liệu được sử dụng trong hệ thống thông tin, với một số đặc trưng tên, kiểu dữ liệu, lĩnh vực sử dụng, các quy tắc tác động
Dưới đây là một biểu mẫu để xây dựng một từ điển dữ liệu:
liệu Loại Mô tả kiểu dữ liệu
Trong đó:
STT số thứ tự của thông tin dữ liệu.
Tên dữ liệu diễn giải, mô tả kiểu dữ liệu được đề cập
trong bảng dữ liệu sơ cấp
Loại có hai loại dữ liệu:
TT chỉ dữ liệu phải tính toán.
KTT chỉ dữ liệu không tính toán
Mô tả kiểu dữ liệu
- Counter là kiểu dữ liệu đặt biệt của Microsoft Access
phát sinh
- Text dữ liệu kiểu văn bản
- Number dữ liệu kiểu số
- Date/time dữ liệu kiểu ngày giờ
- Corrency dữ liệu kiểu tiền tệ
- Memo dữ liệu kiểu văn bản
- Boollean dữ liệu kiểu logic.
Ví dụ: Mô tả kiểu dữ liệu
N4 dữ liệu kiểu số có 4 chữ sô.ú
D dữ liệu kiểu ngày giờ.
T14 dữ liệu kiểu Text chứa 14 kí tự.
II.3.2 Từ điển dữ liệu quản lý giảng day trường Đại học Kỹ thuật Đà nẵng:
STT Dữ liệu Loại Mô tả kiểu
dữ liệu 1
2
Namhoc Hocky
KTT KTT
T10 T10
Trang 84
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Khoahoc Makhoa Khoa Malop SoSv Phong Mamonh oc
Tenmonh oc
SotietLT Btlon Tn_Th MaDD Điadiem MaGV TenGV Chucdan h
Ghichu Thu Tiet Madoan Tenda TuanBD TuanKT Bdthi Ktthi Bdthucta p
Ktthucta p
Tungay Denngay
KTT KTT KTT KTT TT KTT KTT KTT TT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT KTT TT TT
T10 T10 T40 T10 N3 T10 T10 T40 N3 T50 T50 T10 T50 T10 T30 T15 T50 T7 T4 T10 T4 0 N2 N2 N2 N2 N2 N2 D D
II.3.3 Xây dựng ma trận phụ thuộc hàm:
Để xây dựng ma trận phụ thuộc hàm, ta sử dụng lại từ điển dữ liệu đã được xây dựng trong bước trên Mọi dữ liệu sơ cấp trong từ điển dữ liệu được đặt lần lượt trên các dòng để làm đích của các phụ thuộc hàm Sau đó, ta lại đặt lần lượt dữ liệu trên các cột để biểu diễn các nguồn của phụ thuộc hàm
Trang 9 Xây dựng ma trận phụ thuộc hàm đầy đủ:
Mọi dữ liệu sơ cấp được đặt hết trên dòng và trên cột tạo thành ma trận vuông, và cho phép ta xét hết các khả năng của phụ thuộc hàm
Các dữ liệu là khóa:
Qua từ điển dữ liệu ở trên, ta có các dữ liệu là khóa chính là những dữ liệu nguồn của phụ thuộc hàm, đó là:
Namhoc, Malop, Mamonhoc, MaGV, Madoan, Makhoa, MaDD
STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 A B C D
1 Namhoc 1
2 Hocky 1 1
Trang 105 Khoa 1 1
9 Mamonho
c
10 Tenmonho
c
1 1
Các kết hợp:
Học: A = Malop + Mamonhoc
Công tác: B = Malop + MaGV
Kế hoạch học tập: C = Malop + Mamonhoc
Làm đồ án: D = Malop + MaDA
Ma trận rút gọn:
STT 1 4 6 9 14 16 22 A B C D
1 Namhoc 1
2 Hocky 1
3 Khoahoc 1
Trang 114 Makhoa 1
9 Mamonho c
1 1 1 1
10 Tenmonho c
1
11 SotietLT 1
III MÔ HÌNH THỰC THỂ KẾT HỢP:
III.1 Thực thể:
Thực thể là một đối tượng trừu tượng, một đối tượng cụ thể, một quan niệm nhóm các dữ liệu có quan hệ rõ ràng với nhau trong mô hình thế giới thực Các dữ liệu được gọi là các thuộc tính của thực thể Một thực thể có ít nhất một thuộc tính
Ví dụ:
Trang 12LỚP HỌC
Tên lớp học
Học khóa
Số sinh viên
III.1.1 Thuộc tính :
- Thuộc tính sơ cấp: là thể hiện một số tính chất nào đó của thực thể
- Thuộc tính tổng hợp (thuộc tính thứ cấp): thay vì xử lý số lớn thuộc tính sơ cấp, ta nhóm lại thành một thuộc tính tổng hợp
III.1.2 Khóa của thực thể:
Khóa của thực thể là một hoặc tập hợp các thuộc tính không lặp mà các trường của nó xác định các trường hợp cụ thể của thực thể
Quy định chung khóa của thực thể được biểu diễn trong thực thể là in đậm và gạch chân, giúp cho người đọc hiểu được đâu là khóa
Ở đây ta có khóa của thực thể được in đậm và gạch chân
Ví dụ :
MONHOC Mamonho c
Tenmonho c SotietLT Btlon TN/TH ghichu
III.2 Xây dựng cụ thể các thực thể:
Qua quá trình phân tích dữ liệu cho hệ thống chương trình
Ta đi xây dựng các thực thể để đi vào xây dựng mô hình thực thể kết hợp cho việc giải quyết bài toán
Thực thể năm học (NAMHOC) chứa các dữ liệu sau đây:
Namhoc, Hocky, ta lấy Namhoc làm khóa chính cho thực thể NAMHOC.
Trang 13NAMHOC Namhoc
Hocky
Thực thể môn học (MONHOC) gồm các thuộc tính sau:
Mamonhoc, Tenmonhoc, SotietLT, Btlon, Tn/Th, Ghichu Trong đó,
lấy mã môn học (Mamonhoc)làm khóa chính cho thực thể môn
học (MONHOC)
MONHOC Mamonh oc
Tenmonho c SotietLT Btlon TN/TH Ghichu
Thực thể đồ án (DOAN): gồm các thuộc tính sau MaDA,
TenDA Trong đó, MaDA là khóa chính của thực thể DOAN.
DOAN MaDA
TenDA
Thực thể giáo viên (GIAOVIEN) gồm các thuộc tính sau :
MaGV, TenGV, Chucdanh Trong đó, lấy mã giáo viên (MaGV) làm
khóa chính
GIAOVIE N MaGV
TenGV Chucdanh
Thực thể lớp học (LOP) gồm các thuộc tính sau đây:
Malop, SoSV, Hockhoa Trong đó, lấy mã mã lớp(Malop) làm khóa
chính
LOP
Trang 14SoSV Hockhoa
Thực thể KHOA gồm các thuộc tính sau Makhoa, Tenkhoa
Trong đó, lấy mã khoa (Makhoa) làm khóa chính
KHOA Makhoa
Tenkhoa
Thực thể địa điểm (DIADIEM) gồm các thuộc tính sau:
MaDD, Diadiem, phong Trong đó, lấy mã địa điểm (MaDD) làm khóa
chính
DIADIEM MaDD
Diadiem Phong
III.3 Sự kết hợp:
III.3.1 Sự kết hợp:
Trong các cấu trúc thực thể trên, các dữ liệu không phản ánh được mối liên hệ (nếu có) giữa chúng Tồn tại những mối liên hệ hay sự phụ thuộc về tác nghiệp giữa các khóa trong các thực thể của nhiều thực thể đó
Như vậy, kết hợp (association) là mối liên hệ hay sự phụ thuộc giữa các thực thể với nhau Trong đó mỗi thực thể đóng một vai trò xác định Vậy, sự kết hợp là phản ánh được một tình huống thực trong hệ thống thông tin đang xét
Ví dụ:
Lớp 95t học môn học lập trình hàm vào thứ hai.
Một kiểu kết hợp (Association type) là tập hợp có cùng ngữ nghĩa giữa nhiều kiểu thực thể Trong đó, tên kiểu kết hợp được quy ước viết chữ hoa, chữ thường, xen kẻ tương tự kiểu đặc tính nhưng in nghiêng
Ví dụ:
- Kết hợp Học giữa hai kiểu thực thể LOP và MONHOC
- Kết hợp công tác giữa thực thể GIAOVIEN và LOP
Kết hợp nhị nguyên: một kiểu kết hợp được gọi là nhị
nguyên (Binary) nếu chỉ có hai kiểu thực thể tham gia vào kết hợp Đây là ánh xạ giữa hai tập hợp thực thể hay giữa hai kiểu thực thể tương ứng Aïnh xạ cũng xem là có hai chiều ngược
Trang 15nhau Trong phép kết hợp giữa các thực thể của hai kiểu thực thể
III.3.2 Các bản số (Cardinality):
Người ta đưa vào khái niệm bản số (Cardinality) hay còn gọi
là lực lượng Các bản số thể hiện mối quan hệ tồn tại giữa các trường hợp cụ thể của các kiểu thực thể thông qua các kết hợp Với mỗi kiểu thực thể và với mỗi kiểu kết hợp liên quan hai bản số được chỉ định, bản số thứ nhất là cực tiểu và bản số thứ hai là cực đại
Với mỗi kiểu kết hợp được xác định bởi hai cặp bản số được ký hiệu 0-1, 1-1, 0-n hoặc 1-n chữ n thể hiện một số không xác định, lớn hơn hoặc bằng 1 Đôi khi có thể là một con số xác định nhưng trong phân tích ý niệm, ta không đặt thành vấn đề, miễn là con số được ghi nhận
Các bản số thể hiện mối quan hệ giữa các thực thể, trường hợp cụ thể của các thực thể của bài toán có các kết hợp như ở phần sau
III.3.3 Sự kết hợp có phân cấp: (Ràng buộc toàn vẹn hàm)
Một kiểu kết hợp phản ánh sự phụ thuộc về tác nghiệp giữa các khóa của những kiểu thực thể tương ứng được gọi là sự kết hợp có phân cấp, hay ràng buộc toàn vẹn hàm (FIC: Functional Integrity Constrant) Kiểu kết hợp có phân cấp có thể xảy ra một thực thể duy nhất với kiểu kết hợp là phản xạ
Các kết hợp có phân cấp bao gồm:
Kết hợp thể hiện một lớp học “tại" một địa điểm nào
của hai thực thể LOP và DIADIEM:
Kết hợp thể hiện lớp "thuộc một khoa nào" của hai thực
thể LOP và KHOA:
Kết hợp dạy của hai thực thể GIAOVIEN và MONHOC
Tại
Tại
LOP Malop
Hockho a SoSV
LOP Malop
Hockho a SoSV
DIADIE M MaDD
Diadiem Phong
DIADIE M MaDD
Diadiem Phong
LOP Malop
Hockho a SoSV
LOP Malop
Hockho a SoSV
Thuộc
Makho a
Tenkho a
KHOA Makho a
Tenkho
Mamonho c
Tenmonho c SotietLT Btlon TN/TH
MONHOC Mamonho c
Tenmonho c SotietLT Btlon TN/TH
GIAOVIEN MaGV
TenGV Chucdanh
GIAOVIEN MaGV
TenGV Chucdanh
Dạy môn
Trang 16 Kết hợp "hướng dẫn đồ án" của hai thực thể GIAOVIEN
và DOAN:
III.3.3 Sự kết hợp không phân cấp (ràng buộc toàn vẹn bội):
Một kiểu kết hợp được gọi là không phân cấp, hay ràng buộc toàn vẹn bội (MIC: Multiple Integrity Constrain) nếu kiểu kết hợp đó có chứa dữ liệu (các thuộc tính của kiểu kết hợp) và các dữ liệu này được xác định khi xác định được tất cả các khóa của thực thể liên quan tham gia vào kết hợp
Kết hợp thể hiện "kế hoạch học tập" của lớp học và năm học qua hai thực thể LOP, NAMHOC
Kết hợp "Học" của lớp mang dữ liệu thứ, tiết của hai
thực thể LOP và MONHOC
Kết hợp "Làm đồ án" mang dữ liệu từ tuần, đến tuần
của hai thự thể LOP và DOAN:
LOP Malop
Hockho a SoSV
LOP Malop
Hockho a SoSV
NAMHOC Namhoc
Hocky
NAMHOC Namhoc
Hocky
Kế hoạch học
Từ tuần Đến tuần
Kế hoạch học
Từ tuần Đến tuần
LOP Malop
Hockho a SoSV
LOP Malop
Hockho a SoSV
MONHOC Mamonho c
Tenmonho c SotietLT Btlon TN/TH Ghichu
MONHOC Mamonho c
Tenmonho c SotietLT Btlon TN/TH Ghichu
Học
Thứ Tiết
Học
Thứ Tiết
LOP Malop
Hockho a
LOP Malop
Hockho a
DOAN MaDA
TenDA
DOAN MaDA
TenDA
Làm đồ án
Từ tuần Đến tuần
Làm đồ án
Từ tuần Đến tuần
DOAN MaDA
TenDA
DOAN MaDA
TenDA
GIAOVIEN MaGV
TenGV Chucdanh
GIAOVIEN MaGV
TenGV Chucdanh
Hướng dẫn
Hướng dẫn