ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KHOA HỌC
KHOA CÔNG NGHỆ THÔNG TIN
C
C
Ơ
Ơ
S
S
Ở
Ở
D
D
Ữ
Ữ
L
L
I
I
Ệ
Ệ
U
U
N
N
Â
Â
N
N
G
G
C
C
A
A
O
O
Giáo viên hướng dẫn Nhóm học viên thực hiện
TS. HOÀNG QUANG 1. HOÀNG HỮU CHIẾN
2. ĐOÀN VĂN CỰ
3. THÁI QUANG HOÀNG
4. HOÀNG TUẤN HƯNG
5. HUYỀN TÔN NỮ MINH NGỌC
Huế, tháng 12/2012
MỤC LỤC
Trang
1. Bài 1 – Quản lý thông tin diễn đàn 3
1.1. Mô tả hệ thống 3
1.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R 3
1.3. Thiết kế cơ sở dữ liệu thời gian 4
1.4. Xây dựng mô hình hướng đối tượng 5
2. Bài 2 – Quản lý bán hàng 7
2.1. Mô tả hệ thống 7
2.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R. 7
2.3. Thiết kế cơ sở dữ liệu thời gian 9
2.4. Xây dựng mô hình hướng đối tượng 10
Bài 3: Quản lý học viên trung tâm tin học 12
3.1 Mô tả hệ thống: 12
3.2 Mô hình ER 12
3.3 Mô hình Time ER 14
3.4 Mô hình hướng đối tượng 15
4. Bài 4 – Quản lý đề tài nghiên cứu khoa học 16
4.1. Mô tả hệ thống 16
4.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R 16
4.3. Thiết kế cơ sở dữ liệu thời gian 17
4.4. Xây dựng mô hình hướng đối tượng 18
5. Bài 5 – Chuẩn bị cho hội thảo khoa học 20
5.1. Mô tả hệ thống 20
5.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R 20
5.3. Thiết kế cơ sở dữ liệu thời gian 21
5.4. Xây dựng mô hình hướng đối tượng 23
1. Bài 1 – Quản lý thông tin diễn đàn
1.1. Mô tả hệ thống
Để quản lý thông tin về một diễn đàn (Forum) trên một Website, người
ta tổ chức một cơ sở dữ liệu nhằm quản lý các tập thực thể sau:
- THANHVIEN: Tập các thành viên tham gia diễn đàn, có các thuộc tính:
MATV (mã thành viên: thuộc tính khóa), TENTV (tên thành viên) và MATMA
(mật mã).
- BAIVIET: Tập các bài viết, có các thuộc tính MABV (mã bài viết: thuộc
tính khóa), TIEUDE (tiêu đề bài viết) và NOIDUNG (nội dung bài viết).
- CHUDE: Tập các chủ đề của các bài viết, có các thuộc tính MACD (mã
chủ đề: Thuộc tính khóa) và TENCD (tên chủ đề).
Ngoài ra hệ thống này còn hỗ trợ việc quản lý các mối quan hệ GOI,
THUOC và THAOLUAN với ngữ nghĩa như sau:
- (t,b) GOI: thành viên t có gởi bài viết b.
- (b,c) THUOC: bài viết b thuộc chủ đề c.
- (b,b’) THAOLUAN: bài viết b thảo luận về bài viết b’.
Biết rằng:
- Mỗi bài viết phải do đúng một và chỉ một thành viên gởi lên, còn mỗi
một thành viên có thể gởi nhiều bài viết.
- Một bài viết khi được gởi lên diễn đàn chỉ thuộc một chủ đề nào đó và
cũng có những chủ đề không có bất kỳ bài viết nào.
- Mỗi bài viết có thể là một bài thảo luận cho một bài viết đã được gởi
trước đó hoặc cũng có thể không (tức là một bài viết được gởi lên để các thành
viên khác tham gia thảo luận). Hiển nhiên có thể có những bài viết được gởi lên
diễn đàn nhưng không có ai tham gia thảo luận.
1.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R
1.2.1. Xây dựng mô hình E-R
Mô hình này bao gồm:
Các tập thực thể: được mô tả chi tiết trong bảng sau
THAOLUANVE(0,1)
DUOCTHAOLUANBOI(0,n)
(1,1)
(0,n)
(1,1)
(0,n)
THANHVIEN
TENTV
MATMA
THANHVIEN
MABV
TIEUDE
NOIDUNG
BAIVIET
THAOLUAN
GOI
THUOC
CHUDE
MACD
TENCD
Tên tập thực
thể
Giải thích
Thuộc tính
Tên
Kiểu dữ
liệu
Giải thích
Ghi
chú
THANHVIEN
Tập tất cả các
Thành viên
tham gia diễn
đàn.
MATV
Text
Mã thành
viên
Khóa
TENTV
Text
Tên thành
viên
MATMA
Text
Mật mã
BAIVIET
Tập tất cả các
Bài viết
MABV
Text
Mã bài viết
Khóa
TIEUDE
Text
Tiêu đề
NOIDUNG
Text
Nội dung
CHUDE
Tập các Chủ
đề của bài
viết
MACD
Text
Mã chủ đề
Khóa
TENCD
Text
Tên chủ đề
Các mối quan hệ:
Tên mối quan hệ
Giải thích
Phân loại
GOI
(t,b)
GOI: thành viên t gởi bài viết b.
Mối quan hệ nhị
nguyên 1-n
THUOC
(b,c)
THUOC: bài viết b thuộc chủ đề
c.
Mối quan hệ nhị
nguyên 1 - n
THAOLUAN
(b,b’)
THAOLUAN: bài viết b thảo
luận về bài viết b’
Mối quan hệ nhị
nguyên 1 - n
1.2.2. Xây dựng mô hình quan hệ
1.3. Thiết kế cơ sở dữ liệu thời gian
1.3.1. Yêu cầu bổ sung
Tập thực thể THANHVIEN: cần quản lý thời gian sống của các thành
viên.
Thuộc tính MATMA của tập thực thể THANHVIEN: cần quản lý
thời gian giao tác.
Tập thực thể BAIVIET: cần quản lý thời gian giao tác của các bài
viết.
1.3.2. Xây dựng mô hình TimeER
1.3.3. Xây dựng mô hình quan hệ
1.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng
như sau:
Class THANHVIEN
Properties
MATHANHVIEN: String;
TENTV: String;
MATMA: String;
GOI: set(BAIVIET); {Inverse BAIVIET.GOI}
End THANHVIEN.
THAOLUANVE(0,1)
DUOCTHAOLUANBOI(0,n)
(1,1)
(0,n)
(1,1)
(0,n)
THANHVIEN
TENTV
MATMA TT
THANHVIEN LS
MABV
TIEUDE
NOIDUNG
THAOLUAN
GOI
THUOC
CHUDE
MACD
TENCD
BAIVIET TT
CHUDE
Class BAIVIET
Properties
MABV: String;
TIEUDE: String;
NOIDUNG: String;
GOI: THANHVIEN
THUOC: CHUDE
THAOLUANVE: BAIVIET
DUOCTHAOLUANBOI: set(BAIVIET)
End BAIVIET.
Class CHUDE
Properties
MACD: String;
TENCD: String;
THUOC: set(BAIVIET); {Inverse BAIVIET.THUOC}
End CHUDE.
2. Bài 2 – Quản lý bán hàng
2.1. Mô tả hệ thống
Để hỗ trợ việc quản lý mua bán hàng hóa tại một cửa hàng, người ta xây
dựng một cơ sở dữ liệu nhằm giúp quản lý các tập thực thể sau:
- MATHANG: Tập các mặt hàng, có các thuộc tính: MH(mã mặt hàng:
thuộc tính khóa), TENHANG (tên hàng), ĐVT (đơn vị tính), SLHC (số lượng
hiện có), GBHT (giá bán hiện thời)
- PHIEUNHAP: có các thuộc tính: SP (số phiếu: thuộc tính khóa),
NGAYNHAP(ngày nhập), TENNCC (tên nhà cung cấp).
- HĐXUAT (hóa đơn xuất): có các thuộc tính sau: SOHĐ (số hóa đơn:
thuộc tính khóa), NGAYBAN (ngày bán), TENNMH (tên người mua hàng).
Ngoài ra cần quản lý các thông tin như sau:
- Mỗi phiếu nhập hàng: nhập những mặt hàng nào với số lượng và đơn
giá tương ứng bao nhiêu.
- Mỗi hóa đơn xuất hàng: xuất những mặt hàng nào với số lượng và đơn
giá tương ứng là bao nhiêu.
2.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R.
2.2.1. Xây dựng mô hình E-R
Mô hình này bao gồm:
Các tập thực thể: được mô tả chi tiết trong bảng sau
STT
Tập thực thể
Giải thích
Tập thuộc
Tên thuộc
KDL
Giải thích
Ghi
NGAYNHAP
(1,n)
(1,n)
(1,n)
(1,n)
PHIEUNHAP
MATHANG
HĐXUAT
NHAP
XUAT
SP
TENNCC
SLN
ĐGN
MH
TENHANG
ĐVT
SLHC
GBHT
SLX
T
ĐGX
T
SOHĐ
NGAYBAN
TENNMH
tính
chú
1
PHIEUNHAP
Tập tất cả
các phiếu
nhập
hàng
SP
Text
Số phiếu
Khóa
TENNCC
Text
Tên nhà
cung cấp
NGAYNHAP
Date/Time
Ngày nhập
2
NHAP
Tập tất cả
các mặt
hàng
nhập vào
MH
Text
Mã mặt
hàng
Khóa
SP
Text
Số phiếu
SLN
Number
Số lượng
DGN
Cerrency
Đơn giá
3
MATHANG
Tập tất cả
các mặt
hàng
MH
Mã hàng
Khóa
TENHANG
Tên hàng
ĐVT
Đơn vị
tính
SLHC
Số lượng
hiện có
GBHT
Giá bán
hiện thời
4
XUAT
Tập tất cả
các phiếu
xuất hàng
SOHĐ
Số hóa đơn
Khóa
MH
Mã hàng
Khóa
SLX
Số lượng
xuất
ĐGX
Đơn giá
xuất
5
HĐXUAT
Tập tất cả
các hóa
đơn xuất
hàng
SOHĐ
Số hóa đơn
Khóa
NGAYBAN
Text
Ngày bán
TENNMH
Text
Tên người
mua hàng
* Các mối quan hệ:
Tên mối quan hệ
Giải thích
Phân loại
NHAP
(a,b)
NHAP
Mặt hàng a được nhập vào phiếu
nhập b
Mối quan hệ nhị
nguyên 1- n
XUAT
(c,d)
XUAT
Mặt hàng c được xuất ra hóa đơn d
Mối quan hệ nhị
nguyên 1- 1
2.2.2. Xây dựng mô hình quan hệ
2.3. Thiết kế cơ sở dữ liệu thời gian
2.3.1. Yêu cầu bổ sung
Tập thực thể MATHANG: cần quản lý thời gian sống và giao tác của các
mặt hàng.
2.3.2. Xây dựng mô hình TimeER
2.3.3. Xây dựng mô hình quan hệ thời gian
NGAYNH
AP
(1,n)
(1,n)
(1,n)
(1,n)
PHIEUNHA
P
MATHANG LT
HĐXUAT
NHAP
XUAT
SP
TENNC
C
SLN
ĐGN
MH
TENHAN
G
ĐV
T
SLHC
GBH
T
SLX
T
ĐG
X
T
SOHĐ
NGAYBA
N
TENNM
H
2.4. Xây dựng mô hình hướng đối tượng
Class MATHANG
Properties
Id_mathang:allID;
MH: String;
TENHANG: String;
ĐVT: String;
SLHC: real;
GBHT: real;
THUOC: set(NHAPHANG); {Inverse NHAPHANG.CHUA}
DUOCXUAT: set(XUATHANG); {Inverse
XUATHANG.XUAT}
End MATHANG.
Class PHIEUNHAP
Properties
Id_phieunhap: allID;
SP: Integer;
NGAYNHAP: DateTime;
TENNCC: String;
NHAP: set (NHAPHANG);
End PHIEUNHAP.
Class NHAPHANG
Properties
Id_nh: allID;
SLN: real;
ĐGN: real;
CHUA: MATHANG;
THUOC: PHIEUNHAP; {Inverse PHIEUNHAP.NHAP}
Class HĐXUAT
Properties
Id_hdx: allID;
SOHĐ: Interger;
NGAYBAN: DateTime;
TENNMH: String;
XUAT: set(XUATHANG);
End HOADONXUAT.
Class XUATHANG
Properties
Id_xuathang: allID;
SLX: real;
ĐGX: real;
XUAT: set(MATHANG);
THUOC: HĐXUAT; {Inverse HĐXUAT.XUAT}
End XUATHANG.
Bài 3: Quản lý học viên trung tâm tin học
3.1 Mô tả hệ thống:
Để quản lý việc các học viên ghi danh vào học các lớp do trung tâm tổ
chức, người ta xây dựng một cơ sở dữ liệu gồm các tập thực thể sau:
- LOP: tập các lớp, có các thuộc tính: MALOP (mã lớp), TENLOP (tên
lớp), NGAYKG (ngày khai giảng), HP (học phí).
- HOCVIEN: MAHV (mã học viên), TENHV (tên học viên),
NGAYSINH (ngày sinh)
- PHIEUTHU: MAPHIEU (mã phiếu), NGAYTHU (ngày thu), SOTIEN
(số tiền).
- CHUNGCHI: MACC (mã chứng chỉ), TENCC (tên chứng chỉ)
Ngoài ra cần quản lý các thông tin như sau:
- Mỗi lớp học được tổ chức để đào tạo cho đúng một loại chứng chỉ nhất
định.
- Tại một thời điểm bất kỳ, một học viên có thể đăng ký học tại nhiều
lớp khác nhau.
- Sau khi đăng ký học tại một lớp nào đó, học viên có thể đóng học phí
trong nhiều lần. Việc đóng học phí được quản lý dựa trên các phiếu thu.
3.2 Mô hình ER
3.2.1 Xây dựng mô hình ER
Mô hình này bao gồm:
Các tập thực thể: được mô tả chi tiết trong bảng sau
MAHV
TENHV
NGAYSINH
HOCVIEN
(1,n
)
NGAYKG
(1,n
)
LOP
MALOP
TENLO
P
HP
HOC
CHUNGCHI
(1,1
)
(1,n
)
DANGKY
NAPTIEN
(1,n
)
(1,1
)
MAPHIE
U
NGAYTHU
SOTIEN
PHIEUTHU
Tên tập
thực thể
Giải thích
Thuộc tính
Tên
Kiểu dữ
liệu
Giải thích
Ghi
chú
LOP
Tập tất cả các
lớp
MALOP
Text
Mã lớp
Khóa
TENLOP
Text
Tên lớp
NGAYKG
DateTime
Ngày khai
giảng
HOCPHI
Real
Học phí
HOCVIEN
Tập tất cả các
học viên
MAHV
Text
Mã học
viên
Khóa
TENHV
Text
Tên học
viên
NGAYSINH
DateTime
Ngày sinh
PHIEUTHU
Tập tất cả các
phiếu thu
MAPHIEU
Text
Mã phiếu
NGAYTHU
DateTime
Ngày thu
Khóa
SOTIEN
Real
Số tiền
CHUNGCHI
Tập tất cả các
chứng chỉ
MACC
Text
Mã chứng
chỉ
Khóa
TENCC
Text
Tên chứng
chỉ
Các mối quan hệ:
Tên mối quan hệ
Giải thích
Phân loại
DANGKY
(a,b)
DANGKY
Học viên a đăng ký học lớp b
Mối quan hệ nhị
nguyên n-n
HOC
(c,d)
HOC
Lớp c đào tạo chứng chỉ d
Mối quan hệ nhị
nguyên 1 - n
NAPTIEN
(e,g)
NAPTIEN
Đăng ký e có nạp tiền được ghi
trong phiếu thu g
Mối quan hệ nhị
nguyên 1 - n
3.2.2 Xây dựng mô hình quan hệ
3.3 Mô hình Time ER
3.3.1 Yêu cầu bổ sung
- Tập thực thể HOCVIEN cần quản lý thời gian sống và thời gian giao
tác.
- Mối quan hệ DANGKY (là mối quan hệ giữa 2 tập thực thể LOPHOC
và HOCVIEN): cần quản lý thời gian giao tác.
3.3.2 Xây dựng mô hình Time ER
3.3.3 Xây dựng mô hình quan hệ thời gian
(1,n
)
MAHV
TENHV
NGAYSINH
HOCVIEN LT
NGAYK
G
(1,n
)
LOP
MALOP
TENLO
P
HP
HOC
CHUNGCHI
(1,1
)
(1,n
)
DANGKY TT
NAPTIEN
(1,n
)
(1,1
)
MAPHIE
U
NGAYTH
U
SOTIEN
PHIEUTHU
3.4 Mô hình hướng đối tượng
Class LOP
Properties
MALOP: String;
TENLOP: String;
NGAYKG: DateTime;
HOCPHI: Real;
DANGKY: Set
(HOCVIEN);
HOC: CHUNGCHI;
End LOP.
Class HOCVIEN
Properties
MAHV: String;
TENHV: String;
NGAYSINH: DateTime;
DANGKY: Set(LOP)
End HOCVIEN.
Class PHIEUTHU
Properties
SOPHIEU: String;
SOTIEN: Real;
NGAYTHU: DateTime;
NAPTIEN: DANGKY;
End PHIEUTHU.
Class CHUNGCHI
Properties
MACC: String;
TENCC: String;
HOC: Set(LOP);
End CHUNGCHI.
4. Bài 4 – Quản lý đề tài nghiên cứu khoa học
4.1. Mô tả hệ thống
Trường ĐHKH cần tổ chức một CSDL để quản lý các đề tài nghiên cứu
khoa học của sinh viên. Cho biết một số thông tin liên quan như sau:
- Mỗi một đề tài khi đăng ký thực hiện được cấp một mã số duy nhất.
Ngoài ra, mỗi một đề tài còn có tên đề tài và lĩnh vực nghiên cứu mà đề tài thực
hiện.
- Mỗi một đề tài phải do một giáo viên hướng dẫn. Thông tin về mỗi
giáo viên bao gồm mã giáo viên, họ tên, học hàm, học vị.
Thông tin về sinh viên được tổ chức trong CSDL bao gồm mã sinh viên,
họ tên và tên lớp mà sinh viên đang theo học. Mỗi một đề tài phải có ít nhất một
sinh viên tham gia và có không quá 5 sinh viên cùng tham gia trong một đề tài,
trong đó phải có một sinh viên là người chủ trì đề tài (trưởng nhóm làm đề tài).
4.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R
4.2.1. Xây dựng mô hình E-R
Từ thông tin mô tả hệ thống, ta xây dựng mô hình E-R tương ứng như
sau:
Mô hình này bao gồm:
Các mối quan hệ:
o (p, t)
Huongdan: giáo viên p hướng dẫn đề tài t.
o (p, h)
Thuchien: sinh viên p thực hiện đề tài h.
Các tập thực thể: được mô tả chi tiết trong bảng sau:
STT
Tập thực thể
Giải thích
Tập thuộc
DETAI
Huongdan
GIAOVIEN
Thuchien
SINHVIEN
NHOMTRUONG
(1,1
)
(1,n)
(1,5)
(1,1)
MaDT
TenD
T
Linhv
uc
MaGV
Hoten
Hocha
m
Hocvi
MaSV
Hoten
Tenlo
p
MaDT
Tên thuộc
tính
KDL
Giải thích
Ghi
chú
1
NHOMTRUONG
Nhóm
trưởng
MaDT
Text
Mã đề tài
Khóa
2
GIAOVIEN
Giáo viên
hướng dẫn
MaGV
Text
Mã giáo
viên
Khóa
HotenGV
Text
Họ và tên
Hocham
Text
Học hàm
Hocvi
Text
Học vị
3
SINHVIEN
Sinh viên
thực hiện đề
tài
MaSV
Text
Mã sinh
viên
Khóa
HotenSV
Text
Họ và tên
Tenlop
Text
Tên lớp
4
DETAI
Danh mục đề
tài NCKH
MaDT
Text
Mã đề tài
Khóa
TenDT
Text
Tên đề tài
Linhvuc
Text
Lĩnh vực
Các mối quan hệ:
Tên mối quan hệ
Giải thích
Phân loại
HUONGDAN
(a,b)
DANGKY
Giáo viên a hướng dẫn đề tài b
Mối quan hệ nhị
nguyên 1- n
THUCHIEN
(c,d)
THUCHIEN
Sinh viên c thực hiện đề tài d
Mối quan hệ nhị
nguyên 1- 1
4.2.2. Xây dựng mô hình quan hệ
4.3. Thiết kế cơ sở dữ liệu thời gian
4.3.1. Yêu cầu bổ sung
Từ thông tin mô tả hệ thống ban đầu, ta tiến hành thiết kế cơ sở dữ liệu
thời gian với các yêu cầu bổ sung như sau:
- Cần quản lý thời gian sống của các đề tài.
- Giáo viên hướng dẫn một đề tài có thể thay đổi theo thời gian. Cần
quản lý vấn đề này.
Sinh viên chủ trì một đề tài có thể thay đổi theo thời gian. Cần quản lý
sự thay đổi này.
4.3.2. Xây dựng mô hình TimeER
4.3.3. Xây dựng mô hình quan hệ thời gian
4.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng
như sau:
SINHVIEN
NHOMTRUONG
Thuchien
VT
DETAI LS
GIAOVIEN
Huongdan
VT
(1,1
)
(1,n)
(1,5)
(1,1)
MaDT
TenD
T
Linhv
uc
MaGV
Hoten
Hocha
m
Hocvi
MaSV
Hoten
Tenlo
p
MaDT
Class SINHVIEN
Properties
MaSV:string;
HotenSV:string;
Tenlop: string;
Thuchien: DETAI;
End SINHVIEN.
Class NHOMTRUONG
Inherits: SINHVIEN
Properties
MaDT:string;
End NHOMTRUONG.
Class DETAI
Properties
MaDT:string;
TenDT:string;
Linhvuc:string;
Thuchien: set
(SINHVIEN);
Huongdan: GIAOVIEN;
End DETAI.
Class GIAOVIEN
Properties
MaGV:string;
HotenGV:string;
Hocham:string;
Hocvi:string;
Huongdan: set (DETAI);
End GIAOVIEN.
Class DANGKY
Properties
Lop: LOP;
Hocvien: HOCVIEN;
NAPTIEN: Set(PHIEUTHU);
End DANGKY.
5. Bài 5 – Chuẩn bị cho hội thảo khoa học
5.1. Mô tả hệ thống
Người ta cần phải tổ chức một cơ sở dữ liệu để chuẩn bị cho một hội thảo
khoa học. Hội thảo sẽ được chia thành các tiểu ban khác nhau (thông tin về mỗi
tiểu ban bao gồm: tên tiểu ban, tên người điều khiển và tên thư ký). Các tác giả
muốn tham gia báo cáo trong hội thảo phải gởi trước bản tóm tắt của báo cáo
(bao gồm tên và tóm tắt báo cáo) đến một ban tổ chức (BTC). Một tác giả có thể
gởi nhiều báo cáo đến BTC và mỗi một báo cáo có thể là của nhiều tác giả. Sau
khi nhận được bản tóm tắt báo cáo, BTC phải tiến hành bố trí các báo cáo vào
trong các tiểu ban (mỗi một báo cáo chỉ được trình bày ở một tiểu ban nhất
định).
5.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R
5.2.1. Xây dựng mô hình E-R
Từ thông tin mô tả hệ thống, ta xây dựng mô hình E-R tương ứng như
sau:
Mô hình này bao gồm:
Các mối quan hệ:
+ (tg, b)
Gui: tác giả tg gửi bài báo cáo b.
+ (b, tb)
TrinhBay: bài báo cáo b được trình bày ở tiểu ban tb.
Các tập thực thể: được mô tả chi tiết trong bảng sau:
TenTG
TACGIA
TrinhBay
Gui
TIEUBAN
(1,n)
(1,n)
(1,1)
(1,n)
MaTG
TenBC
TomTatBC
TenTB
TenNĐK
TenTK
BAIBAOCAO
STT
Tập thực thể
Giải thích
Tập thuộc
Tên thuộc tính
KDL
Giải thích
Ghi chú
1
TACGIA
Tác giả
MaTG
Text
Mã tác giả
Khóa
TenTG
Text
Tên tác giả
2
BAIBAOCAO
Bài báo
cáo
TenBC
Text
Tên báo cáo
Khóa
TomTatBC
Text
Tóm tắt báo
cáo
3
TIEUBAN
Tiểu
ban
TenTB
Text
Tên tiểu
ban
Khóa
TenNDK
Text
Tên người
điều khiển
TenTK
Text
Tên thư ký
* Các mối quan hệ:
Tên mối quan hệ
Giải thích
Phân loại
GUI
(tg, b)
Gui: tác giả tg gửi bài báo
cáo b.
Mối quan hệ nhị
nguyên 1- n
TRINHBAY
(b, tb)
TrinhBay: bài báo cáo b
được trình bày ở tiểu ban tb.
Mối quan hệ nhị
nguyên 1- 1
5.2.2. Xây dựng mô hình quan hệ
Từ mô hình E-R ở trên, ta chuyển sang mô hình quan hệ như sau:
5.3. Thiết kế cơ sở dữ liệu thời gian
5.3.1. Yêu cầu bổ sung
Từ thông tin mô tả hệ thống ban đầu, ta tiến hành thiết kế cơ sở dữ liệu
thời gian với yêu cầu bổ sung như sau:
Cần quản lý thời gian xảy ra sự kiện: một báo cáo được trình bày ở
một tiểu ban nào đó.
5.3.2. Xây dựng mô hình TimeER
Từ những yêu cầu bổ sung ở trên, ta xây dựng mô hình TimeER tương
ứng như sau:
Ten
TG
TACGIA
Gui
BT
(1,n)
(1,n
)
(1,
1
)
Ma
T
G
TenBC
Tom
T
atBC
BAI
BA
OCAO
5.3.3. Xây dựng mô hình quan hệ thời gian
Từ mô hình TimeER, ta chuyển sang mô hình quan hệ như sau:
Trong đó, quan hệ: TR(TRINHBAY) là quan hệ thời gian.
5.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng
như sau:
Class TACGIA
properties
MaTG: String;
TenTG:
String;
End TACGIA.
Class BAIBAOCAO
properties
TenBC: String;
TomTatBC: String;
TrinhBay:
TIEUBAN;
End BAIBAOCAO.
Class TIEUBAN
properties
TenTB: String;
TenNDK: String;
TenTK: String;
TrinhBayBoi: set(BAIBAOCAO); {Inverse BAIBAOCAO.TrinhBay}
End TIEUBAN.
Class GUI
Properties
TG: TACGIA;
BC: BAIBAOCAO;
End GUI.