5. Phương phỏp mụ hỡnh húa
3.1.2 Sơ đồ phõn cấp chức năng
1. Chức năng quản lý hồ sơ sinh viờn
Chức năng này đươc phõn ró thành 5 chức năng con:
1.1-Cập nhật khúa học: Liờn quan đến bảng KHOAHOC trong cơ sở dữ liệu, thực hiện chức năng này cú thể Thờm, Sửa thụng tin Khúa học vào bảng KHOAHOC. Sau khi thực hiện chức năng này ta được kho dữ liệu chứa danh mục khúa học.
1.2-Cập nhật Ngành: Liờn quan đến bảng NGANH. Sau khi thực hiện chức năng này ta được kho dữ liệu chứa danh mục ngành
1.3-Cập nhật đối tượng: Liờn quan đến bảng DOITUONG
Trong kho cơ sở dữ liệu, thực hiện chức năng này cú thể Thờm, Sửa,Xúa đối tượng chớnh sỏch vào bảng DOITUONG
Sau khi thực hiện chức năng này ta được kho dữ liệu chứa danh mục đối tượng.
1.4-Cập nhật lớp: Liờn quan đến bảng LOP, cập nhật thụng tin vào bảng LOP. 1.5-Cập nhật sinh viờn: Liờn quan đến bảng SINHVIEN trong cơ sở dữ liệu,
thực hiện chức năng này ta cú thể Thờm, Sửa, Xúa đối tượng sinh viờn trong bảng SINHVIEN. Cỏc thụng tin về ngành học, lớp học, đối tượng lấy từ danh mục kho Danhmucnganh, kho Danhmuclop, Danhmucdoituong. Thụng tin cỏ nhõn sinh viờn(Họ tờn, Ngày sinh, Địa chỉ, Giới tớnh) Lấy từ tỏc nhõn ngoài SINHVIEN. Sau khi thực chức năng này ta được kho dữ liệu chứa thụng tin sinh viờn
(khoThongtinsinhvien)
1.6- Cập nhật năm học : Liờn quan đến bảng NAMHOC trong cơ sở dữ liệu. Thực hiện chức năng này ta cú thể thờm, sửa năm học trong kho dữ liệu Năm học
1.7 – Cập nhật khoa : Liờn quan đến bảng KHOA. Cập nhật thụng tin vào bảng KHOA
2.Chức năng quản lý thu:
Chức năng này được phõn ró thành 5 chức năng con: 2.1- Cập nhật khoản thu: Liờn quan đến bảng KHOANTHU
Trong cơ sở dữ liệu, thực hiện chức năng này cú thể Thờm, Sửa, Xúa khoản thu vào bảng KHOANTHU. Sau khi thực hiện chức năng này ta cú kho dữ liệu chứa danh mục khoản thu(kho Danhmuckhoanthu)
Vớ dụ
Makthu Tenkhoanthu
KT01 Học phớ kỡ 1
KT02 Lệ phớ thi kỡ 1
… …
2.2- Cập nhật mức thu: Liờn quan đến bảng MUCTHU trong cơ sở dữ liệu, thực hiện chức năng này để xỏc định mỗi sinh viờn phải nộp bao nhiờu tiền cho mỗi khoản, đưa ra đươc bảng danh sỏch phải thu. Ta cú kho dữ liệu chứa danh mục mức thu(kho mucthu)
2.3- Lập phiếu thu: Liờn quan đến bảng PHIEUTHU, số tiền thu được tớnh toỏn từ mức thu và tyle phải nộp.
2.4- In phiếu thu: In phiếu thu trả cho sinh viờn và kốm theo bảng kờ thu trong ngày hoặc tuần.
2.5-Lập bảng kờ thu học phớ lệ phớ.
2.6- Cập nhật loại thu: Liờn quan đến bảng LOAITHU. Cập nhật thụng tin vào bảng loại thu.
3. Chức năng bỏo cỏo 3.1- Bỏo cỏo thu theo lớp. 3.2-Bỏo cỏo danh sỏch phải thu.
3.3-Bỏo cỏo danh sỏch thiếu học phớ, lệ phớ 3.1.3 Ma trận thực thể
Hồ sơ dữ liệu đầu vào bao gồm: - Danh sỏch ngành học
- Hồ sơ Sinh viờn - Danh sỏch khoa - Cỏc loại thu
-Danh mục khoản thu - Phiếu thu - Bỏo cỏo Thực thể D1 DS ngành học D2 DS đối tượng D3 DS lớp
D4 Hồ sơ sinh viờn D5 DS Khoa
D6 Cỏc Loại thu
D7 Danh mục Khoản thu D8 Phiếu thu D9 Bỏo cỏo Chức năng 1 2 3 4 5 6 7 8 9 1. Ql Sinh Viờn U U U U U 2. Ql Thu R U U C 3. Bỏo cỏo R R R R R R R R C 3.2 Phõn tớch xử lý
3.3 Phõn tớch dữ liệu
3.3.1 Hồ sơ dữ liệu đầu vào1 Mẫu phiếu thu 1 Mẫu phiếu thu
BIấN LAI THU TIỀN
Số phiếu: …….
Học kỳ:……… Năm học:……
Tờn sinh viờn: ……….
Mó sinh viờn: ……….. Lớp: ……… Ngành: …….. Khúa:……Khoa…… Đối tượng ưu tiờn: ……….
Nội dung và số tiền thu:
STT Loại thu Mức thu % miễn giảm Tổng tiền phải thu 1 Tiền học phớ ……… ……… .. 2 Tiền xõy dựng trường ……… ……… .. 3 Tiền bảo hiểm ……… ……… .. Tổng tiền:……….đồng Số tiền bằng chữ: ………
2 Hồ sơ sinh viờn
STT SINH VIấN GHI CHÚ
1 Manganh Mó ngành 2 Tennganh Tờn ngành 3 Makhoa Mó khoa 4 Tenkhoa Tờn khoa 5 Malop Mó lớp 6 Tenlop Tờn lớp 7 Siso Sĩ số
8 GVCN Giỏo viờn chủ nhiệm
9 Makhoahoc Mó khúa học
10 Tenkhoahoc Tờn khúa học
11 Ngayvao Ngày vào
12 Masv Mó sinh viờn
13 Tensv Tờn sinh viờn
14 Ngaysinh Ngày sinh
15 Diachi Địa chỉ
3.3.2 Xỏc đinh cỏc thực thể
-Mụ tả bài toỏn: Quản lý học phớ, lệ phớ của sinh viờn phạm vi một khoa của một Trường Đại Học trong một học kỳ. Khoa cú nhiều ngành học, ngành cú nhiều lớp học và một lớp co nhiều sinh viờn
-Mỗi sinh viờn cú nhieu khoan phải nộp: học phớ, lệ phớ
-Sinh viờn trong trường cú nhiều loại đúi tượng chớnh sỏch được giảm học phớ theo quy định.
-Số tiền định mức cú thể thay đổi theo quyết định của ngành.
-Yờu cầu của bài toỏn là quản lý học phớ, cú chức năng cập nhật lý lịch sinh viờn, nhập học phớ, in phiếu thu, bỏo cỏo thu học phớ theo ngày(bảng kờ), khoảng ngày,danh sỏch cỏc sinh viờn chưa đúng học phớ. Để giải quyết bài toỏn trờn ban đầu ta xỏc định 2 thưc thể là:
SINHVIEN,PHIEUTHU
Sau khi khảo sỏt ta thu đươc bảng cỏc thuộc tớnh sau:
STT SINHVIEN PHIEUTHU Ghi chỳ
1 Manganh Mó ngành 2 Tennganh Tờn ngành 3 Makhoa Mó khoa 4 Tenkhoa Tờn khoa 5 Makhoahoc Mó khúa học 6 Tenkhoahoc Tờn khúa học
7 Ngayvao Ngày vào
9 Malop Mó lớp
10 Tenlop Tờn lớp
11 Siso Sĩ số
12 GVCN Giỏo viờn chủ nhiệm
13 Masv Mó sinh viờn
16 Diachi Địa chỉ
17 Gioitinh Giới tớnh
18 Madt Mó đối tượng
19 Tendt Tờn đối tượng
20 Makt Mó khoản thu
21 Tenkt Tờn khoản thu
22 Sotdm Số tiền định mức
23 Sopt Số phiếu thu
24 Ngaythu Ngày thu
25 Sotien Số tiền
26 Maloaithu Mó loại thu
27 Tenloaithu Tờn loại thu
28 Manamhoc Mó năm học
29 Nienhoc Niờn học
3.3.3 Xỏc định cỏc quan hệ và mụ hỡnh liờn kết1 Ngành học cú nhiều lớp học 1 Ngành học cú nhiều lớp học
2 khúa học cú nhiều lớp học
3 Nhiều sinh viờn thuộc một lớp
5 Mỗi ngành cú nhiều mức thu khỏc nhau đối với từng sinh viờn
6 Mỗi khoản thu chia làm cỏc mức thu khỏc nhau cho mỗi sinh viờn
8 Mỗi loại thu cú nhiều tỉ lệ ưu đói
9 Nhiều đối tượng cựng cú tỉ lệ miễn giảm giống nhau
11 Mỗi khoa cú nhiều ngành học
12 Một năm học cú nhiều khoản thu
13. Mỗi khoản thu cú trong nhiều phiếu thu
CHƯƠNG IV: THIẾT KẾ
4.1 Thiết kế cơ sở dữ liệu logic
4.1.1 Chuyển mụ hỡnh khỏi niệm dữ liệu về mụ hỡnh quan hệ 1.DOITUONG(Madt,Tendt) 2.LOP(Malop,Tenlop,Siso,GVCN,Manganh,Makhoahoc) 3.NGANH(Manganh,Makhoa,Tennganh,He) 4.KHOAHOC(Makhoahoc,Tenkhoahoc,Ngayvao) 5.SINHVIEN(Masv,Malop,Madt,Tensv,NS,GT,DC) 6.KHOANTHU(Makthu,Maloaithu,Namhoc,Hocky,Tenkhoanthu) 7.MUCTHU(Makthu,Manganh,Sotiendm) 8.PHIEUTHU(Sopt,Masv ,Makthu,Ngaythu,Sotien) 9.TYLEUUDAI(Madt,Maloaithu,Phantram) 10.LOAITHU(Maloaithu,Tenloaithu) 11.NAMHOC(Namhoc,Nienhoc) 12. KHOA(Makhoa,Tenkhoa)
Sau khi chuyển về mụ hỡnh khỏi niệm dữ liệu dựa vào 3 quy tắc chuẩn húa ta được hệ lược đồ sau:
1.DOITUONG(Madt,Tendt) đạt 3 NF 2.LOP(Malop,Tenlop,Siso,GVCN,Manganh,Makhoahoc) đạt 3 NF 3.NGANH(Manganh,Makhoa,Tennganh,He) đạt 3 NF 4.KHOAHOC(Makhoahoc,Tenkhoahoc,Ngayvao) đạt 3 NF 5.SINHVIEN(Masv,Malop,Madt,Tensv,NS,GT,DC) đạt 3 NF 6.KHOANTHU(Makthu,Maloaithu,Namhoc,Hocky,Tenkhoanthu) đạt 3 NF 7.MUCTHU(Makthu,Manganh,Sotiendm) đạt 3 NF 8.PHIEUTHU(Sopt,Masv ,Makthu,Ngaythu,Sotien) đạt 3 NF
9.TYLEUUDAI(Madt,Maloaithu,Phantram) đạt 3 NF 10.LOAITHU(Maloaithu,Tenloaithu) đạt 3 NF
11.NAMHOC(Namhoc,Nienhoc) đạt 3 NF 12. KHOA(Makhoa,Tenkhoa) đạt 3 NF Kết luận: vậy ta cú hệ lược đồ sau đạt 3NF: 1.DOITUONG(Madt,Tendt) 2.LOP(Malop,Tenlop,Siso,GVCN,Manganh,Makhoahoc) 3.NGANH(Manganh,Makhoa,Tennganh,He) 4.KHOAHOC(Makhoahoc,Tenkhoahoc,Ngayvao) 5.SINHVIEN(Masv,Malop,Madt,Tensv,NS,GT,DC) 6.KHOANTHU(Makthu,Maloaithu,Namhoc,Hocky,Tenkhoanthu) 7.MUCTHU(Makthu,Manganh,Sotiendm) 8.PHIEUTHU(Sopt,Masv ,Makthu,Ngaythu,Sotien) 9.TYLEUUDAI(Madt,Maloaithu,Phantram) 10.LOAITHU(Maloaithu,Tenloaithu) 11.NAMHOC(Namhoc,Nienhoc) 12. KHOA(Makhoa,Tenkhoa)
4.2 Thiết kế cơ sở dữ liệu vật lý1 NGANH 1 NGANH Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Manganh int 04 Số Mó ngành Notnull Tennganh char 100 Chữ cỏi Tờn
ngành
He Char 100 Chữ cỏi Hệ
FK Makhoa Nvarchar 20 Chữ+số Mó khoa
2 LOP Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Malop nvarchar 20 Chữ+số Mó lớp Notnull
Tenlop nvarchar 100 Chữ+số Tờn lớp
Siso Int 04 Số Sĩ số
GVCN Char 100 Chữ Giỏo viờn chủ nhiệm
FK Manganh int 04 Số
3 KHOAHOC Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Makhoahoc nvarchar 20 chu+Số Mó khúa
học
Notnull Tenkhoahoc nvarchar 20 Chữ+số Tờn khúa
học
Ngayvao datetime 08 Số Ngày vào
4 SINHVIEN Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Masv nvarchar 06 Số Mó sinh
viờn
Notnull FK Malop nvarchar 20
FK Madoituong nvarchar 20
Tensv Char 50 Chữ Tờn sinh viờn Ngaysinh datetime 08 Số Ngày
sinh Gioitinh char 04 Chữ Giới tớnh Diachi nvarchar 100 Số+chữ Địa chỉ
5 DOITUONG Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Madoituong nvarchar 20 Chữ+số Mó đối
tượng
Notnull Tendoituong Char 100 Chữ Tờn đối
tượng 6 MUCTHU Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc
FK Manganh int 04 Notnull
FK Makhoanthu nvarchar 20 Notnull
sotiendinhmuc float 08 Số Số tiền dm
7 KHOANTHU
Thuộc tớnh khúa
Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Makhoanthu nvarchar 20 Chữ+số Mó khoản
thu Notnull Tenkhoanthu Char 50 Chữ Tờn khoản thu Maloaithu nvarchar 20 Namhoc datetime 8
8 PHIEUTHU Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Sophieuthu nvarchar 20 chữ+Số Số phiếu
thu
Notnull FK Masv nvarchar 06
Ngaythu datetime 08 Số Ngày thu Sotien nvarchar 10 Số Tổng tiền FK Makthu nvarchar 20 chữ+số
9 TYLEUUDAI
Thuộc tớnh khúa
Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch
Ràng buộc FK Madoituong Nvarchar 20 Chữ+số Mó đối
tượng
Notnull FK Maloaithu Int 04 Số Mó loại
thu Notnull Phantram Int 04 Số Phần trăm miễn giảm
10 LOAITHU Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Maloaithu nvarchar 20 Chu+Số Mó loại
thu
Notnull Tenloaithu Char 100 Chữ Tờn loại
thu 11 KHOA Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc K Makhoa Nvarchar 20 Chữ+số Mó khoa Notnull
Tenkhoa Char 20 Chữ Tờn khoa 12 NAMHOC Thuộc tớnh khúa Thuộc tớnh Kiểu Độ rộng Mụ tả Giải thớch Ràng buộc
K Namhoc Int 04 Số Năm học Notnull
Niờnhoc Char 08 Số Niờm học
4.3 Thiết kế đầu ra
4.3.1 Biờn lai thu tiền
4.4 Thiết kế giao diện
4.4.2 Thiết kế cỏc form quản lý sinh viờna Form cập nhật khúa học a Form cập nhật khúa học
b Form cập nhật ngành học
d Form cập nhật lớp học
4.4.3 Thiết kế cỏc form thực hiện chức năng thua Form cập nhật khoản thu a Form cập nhật khoản thu
c .Form cập nhật loại thu
5.1 Ngụn ngữ lập trỡnh
Trờn cơ sở phõn tớch thiết kế cơ sở dữ liệu, hệ thống chức năng trờn đõy em thấy rằng chương trỡnh cú nhiều đối tượng cần quản lý như: khúa học, ngành học, lớp học, sinh viờn, đối tượng, khoản thu, phiếu thu…; cỏc đối tượng cú nhiều thuộc tớnh của đối tượng khỏc…, do đú việc lập trỡnh cần phải sử dụng một bộ cụng cụ hướng đối tượng và một hệ quản trị cơ sở dữ liệu để lưu trữ thụnh tin. Trong cỏc ngụn ngữ lập trỡnh OOP em đó được học như: C+ +, Visual Basic(VB),em lựa chọn ngụn ngữ VB để lập trỡnh giải quyết bài toỏn. Sử dụng ngụn ngữ VB bởi lẽ: VB6.0 là bộ cụng cụ lập trỡnh hướng đối tượng rất mạnh và rất mềm dẻo, đặc biệt hỗ trợ người lập trỡnh , vỡ VB cho phộp sử dụng cỏc đối tượng sẵn cú của nú để thiết kế giao diện bằng cỏch kộo thả chuột chỳng từ Toolbox lờn form, điều này giảm bớt rất nhiều khối lượng cụng việc trong lập trỡnh. Trong VB việc lập trỡnh thủ tục rất tiện lợi và linh hoạt, qua việc viết code cho cỏc thủ tục tỡnh huống này chương trỡnh ứng dụng sẽ đỏp ứng tức thỡ yờu cầu của người sử dụng. giao diện tạo trong VB rất thõn thiện với người dựng. VB sử dụng thư viện ADO để truy cập cơ sở dữ liệu nhanh chúng và dễ dàng. Cơ sở dữ liệu em xõy dựng trong quan hệ quản trị cơ sở dữ liệu SQL. Với C++ việc thiết kế giao diện đũi hỏi người lập trỡnh phải tự lập trỡnh đồ họa, sử dụng cỏc hàm Window API…; Trong khuụn khổ bài toỏn này em thỏy rằng VB là phự hợp hơn cả, chớnh vỡ vậy sự lựa chọn của em là dựng ngụn ngữ VB để việt code cho chương trỡnh.
5.2 Hệ quản trị
5.2.1 SQL Server 2000
- SQL Server 2000 là một hệ thống quản lý cơ sở dữ liệu ( Relationnal Database Management System) sử dụng Transact – SQL để trao đổi dữ liệu giữa client computer với SQL Server computer.
- SQL Server 2000 được tối ưu để cú thể chạy trờn mụi trường cơ sở dữ liệu rất lớn lờn đến Tera – Byte và cú thể phục vụ cựng lỳc cho hàng ngàn user. SQL Server 2000 cú thể kết hợp cỏc Server khỏc như Microsoft Internet Information Server (IIS), E – Commerceserver, Proxyserver…
- Enterprise: Chứa đầy đủ cỏc đặc trưng của SQL Server và cú thể chạy tốt trờn hệ đến 32 CPU và 64 GB RAM. Thờm vào đú nú cú cỏc dịch vụ giỳp cho việc phõn tớch dữ liệu rất hiệu quả.
- Standard: Rất thớch hợp cho cỏc cụng ty vừa và nhỏ vỡ giỏ thành rẻ hơn nhiều so với Enterprise Edition, nhưng lại bị giới hạn một số chức năng cao cấp khỏc, edition này cú thể chạy tốt trờn hệ thống lờn đến 4CPU với 2GB RAM.
- Personal: Được tối ưu húa để chạy trờn PC nờn nú cú thể cài đặt trờn hầu hết cỏc phiờn bản Windows.
- Developer: Cú đầy đủ cỏc tớnh năng của Enterprise Edition nhưng được chế tạo đặc biệt như giớn hạn số lượng người kết nối vào Server cựng một lỳc … - Desktop Engine: Đõy là một Engine chạy trờn Desktop và khụng cú giao diện, thớch hợp việc triển khai ứng dụng ở mỏy client. Kớch thước database bị giới hạn khoảng 2GB.
- Win CE: Dựng cho cỏc ứng dụng chạy trờn Window CE.
- Trial: cú tớnh năng của Enterprise Edition, download free, nhưng giới hạn thời gian sử dụng.
5.2.2 Đặc điểm của SQL và đối tượng làm việc a) Đặc điểm:
- SQL là ngụn ngữ tựa tiếng anh.
- SQL cung cấp tập lệnh phong phỳ cho cỏc cụng việc truy xuất, điều khiển dữ liệu và hệ thống.
+ Chốn ( Insert) , cập nhật ( Update), xúa ( delete), cỏc hàng trong một quan hệ.
+ Đọc hay truy vấn ( select) cỏc hàng trong một quan hệ. + Tạo, sửa đổi, thờm và xúa cỏc đối tượng.
+ Điều khiển việc truy nhập tới cơ sở dữ liệu, cỏc đối tượng và dữ liệu của cơ sở dữ liệu để đảm bảo tớnh bảo mật của cơ sở dữ liệu.
Đối tượng làm việc của SQL là cỏc bảng (table) (tổng quỏt là cỏc quan hệ) dữ liệu hai chiều. cỏc bảng này bao gồm một hay nhiều cột (column) và hàng (row). Cỏc cột cũn gọi là cỏc trường (field), cỏc hàng gọi là cỏc bản ghi (record). Cột cú tờn gọi và kiểu dữ liệu chớnh xỏc tạo lờn cấu trỳc của bảng. 5.2.3 Cỏc kiểu dữ liệu cơ bản của SQL
+ Interger: dữ liệu kiểu số nguyờn cú phạm vi từ -2147483648 đến 2147483647
+ Smallin teger: dữ liệu kiểu số nguyờn cú phạm vi từ -32768 đến 32767 + Number (n,p): dữ liệu kiểu số thập phõn cú độ dài tối đa là n kể cả p chữ số thập phõn ( khụng tớnh dấu chấm phẩy tức là tối đa n-p số chữ số của phần nguyờn)
+ Ar (n): dữ liệu kiểu chuỗi / xõu cú độ dài cố định là n, n<=255 + Varchar (n): dữ liệu kiểu chuỗi / xõu cú độ dài biến đổi (0 đến n).
+ Longvarchar: dữ liệu kiểu chuỗi / xõu cú độ dài khụng cố định thay đổi trong khoảng 4kb đến 32kb.
5.3 Cỏc giao diện