Trong thời buổi công nghệ phát triển như hiện nay thì nhu cầu tin học hóa trong việc quản lý ở các cơ quan, ban ngành là một vấn đề đang được quan tâm hàng đầu. Tin học hóa giúp quản lý dễ dàng, tiết kiệm chi phí và thời gian nhiều hơn. Trong đó, nhu cầu tin học hóa trong các khâu quản lý ở các trường Đại học, Cao đẳng, Trung cấp, … là một nhu cầu cấp thiết hiện nay. Quản lý các tài liệu học tập của các môn học ở các trường Đại học, Cao đẳng, … là một trong những nhu cầu cấp thiết hiện nay. Để giúp đỡ các giảng viên dễ dàng trong việc chia sẻ những tài liệu học tập cũng như những bài viết hay, hữu ích cho sinh viên. Đồng thời, giúp đỡ các bạn sinh viên có thể tìm kiếm, cập nhật những tài nguyên học tập thường xuyên và tiện lợi hơn thì việc xây dựng một website quản lý tài nguyên học tập ở các trường Đại học, Cao đẳng, Trung cấp, ... là một việc đáng chú ý hiện nay. Do đó, em chọn đề tài “Xây dựng Website quản lý tài nguyên môn học thuộc Bộ môn Công nghệ Thông tin”. Website cho phép các giảng viên upload các tài liệu liên quan đến môn học do mình giảng dạy cho các lớp học, cũng như các tài nguyên cho tất cả các sinh viên thuộc bộ môn. Đối với các sinh viên, sẽ dễ dàng và nhanh chóng hơn trong việc nhận những tài liệu học tập liên quan đến các môn học của họ.
Trang 1Chương 1: ĐẶT VẤN ĐỀ
Trong thời buổi công nghệ phát triển như hiện nay thì nhu cầu tin học hóatrong việc quản lý ở các cơ quan, ban ngành là một vấn đề đang được quan tâmhàng đầu Tin học hóa giúp quản lý dễ dàng, tiết kiệm chi phí và thời gian nhiềuhơn Trong đó, nhu cầu tin học hóa trong các khâu quản lý ở các trường Đại học,Cao đẳng, Trung cấp, … là một nhu cầu cấp thiết hiện nay Quản lý các tài liệu họctập của các môn học ở các trường Đại học, Cao đẳng, … là một trong những nhucầu cấp thiết hiện nay Để giúp đỡ các giảng viên dễ dàng trong việc chia sẻ nhữngtài liệu học tập cũng như những bài viết hay, hữu ích cho sinh viên Đồng thời, giúp
đỡ các bạn sinh viên có thể tìm kiếm, cập nhật những tài nguyên học tập thườngxuyên và tiện lợi hơn thì việc xây dựng một website quản lý tài nguyên học tập ởcác trường Đại học, Cao đẳng, Trung cấp, là một việc đáng chú ý hiện nay
Do đó, em chọn đề tài “Xây dựng Website quản lý tài nguyên môn học thuộc Bộ môn Công nghệ Thông tin” Website cho phép các giảng viên upload
các tài liệu liên quan đến môn học do mình giảng dạy cho các lớp học, cũng như cáctài nguyên cho tất cả các sinh viên thuộc bộ môn Đối với các sinh viên, sẽ dễ dàng
và nhanh chóng hơn trong việc nhận những tài liệu học tập liên quan đến các mônhọc của họ
Trang 2Chương 2: CƠ SỞ LÝ THUYẾT
2.1 GIỚI THIỆU VỀ ASP.NET
Từ khoảng cuối thập niên 90, ASP (Active Server Page) đã được nhiều lậptrình viên lựa chọn để xây dựng và phát triển ứng dụng web động trên máy chủ sửdụng hệ điều hành Windows ASP đã thể hiện được những ưu điểm của mình với
mô hình lập trình thủ tục đơn giản, sử dụng hiệu quả các đối tượng COM : ADO(ActiveX Data Object) - xử lý dữ liệu, FSO (File System Object) - làm việc với hệthống tập tin, … Đồng thời, ASP cũng hỗ trợ nhiều ngôn ngữ: VBScript, JavaScript.Chính những ưu điểm đó, ASP đã được yêu thích trong một thời gian dài Tuynhiên, ASP vẫn còn tồn đọng một số khó khăn như Code ASP và HTML lẫn lộn,điều này làm cho quá trình viết code khó khăn, thể hiện và trình bày code khôngtrong sáng, hạn chế khả năng sử dụng lại code Bên cạnh đó, khi triển khai cài đặt,
do không được biên dịch trước nên dễ bị mất source code, hạn chế về mặt tốc độthực hiện Quá trình xử lý Postback khó khăn,…
Đầu năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web khá mới mẻvới tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.Net Với ASP.Net,không những không cần đòi hỏi bạn phải biết các tag HTML, thiết kế web, mà nócòn hỗ trợ mạnh lập trình hướng đối tượng trong quá trình xây dựng và phát triểnứng dụng Web
ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server(Server-side) dựa trên nền tảng của Microsoft Net Framework
Hầu hết, những người mới đến với lập trình web đều bắt đầu tìm hiểu những
kỹ thuật ở phía Client (Client-side) như: HTML, Java Script, CSS (Cascading StyleSheets) Khi Web browser yêu cầu một trang web (trang web sử dụng kỹ thuật
Trang 3hành tại Web Server Sau khi được Server đọc, biên dịch và thi hành, kết quả tựđộng được chuyển sang HTML/JavaScript/CSS và trả về cho Client.
Tất cả các xử lý lệnh ASP, ASP.Net đều được thực hiện tại Server và do đógọi là kỹ thuật lập trình ở phía server
Sự xuất hiện của ASP.NET làm cân xứng giữa quá trình xây dựng ứng dụngtrên Windows và Web ASP.NET cung cấp một bộ các Server Control để lập trìnhviên bắt sự kiện và xử lý dữ liệu của ứng dụng như đang làm việc với ứng dụngWindows Nó cũng cho phép chúng ta chuyển một ứng dụng trước đây viết chỉ đểchạy trên Windows thành một ứng dụng Web khá dễ dàng Ví dụ cho các lớp trongthư viện này là WebControl, HTMLControl, …
2.2 GIỚI THIỆU VỀ NET FRAMEWORK
.NET Framework là một tập hợp hay thư viện các lớp đối tượng hỗ trợ ngườilập trình khi xây dựng ứng dụng Microsoft Foundation Class là bộ thư viện mà lậptrình viên Visual C++ sử dụng trong khi Java Foundation Class là bộ thư viện dànhcho các lập trình viên Java Giờ đây, có thể coi NET Framework là bộ thư việndành cho các lập trình viên NET Với hơn 5000 lớp đối tượng để gọi thực hiện đủcác loại dịch vụ từ hệ điều hành, chúng ta có thể bắt đầu xây dựng ứng dụng bằngNotepad.exe!!!… Nhiều người lầm tưởng rằng các môi trường phát triển phần mềmnhư Visual Studio 98 hay Visual Studio.NET là tất cả những gì cần để viết chươngtrình Thực ra, chúng là những phần mềm dùng làm "vỏ bọc" bên ngoài
Với chúng, chúng ta sẽ viết được các đoạn lệnh đủ các màu xanh, đỏ; lỗi cúpháp báo ngay khi đang gõ lệnh; thuộc tính của các đối tượng được đặt ngay trêncửa sổ properties, giao diện được thiết kế theo phong cách trực quan… Như vậy,chúng ta có thể hình dung được tầm quan trọng của NET Framework
2.3 GIỚI THIỆU VỀ SQL SERVER 2000
SQL Server 2000 là một hệ thống quản lý cơ sở dữ liệu - Database
Management System (DBMS) sử dụng Transact-SQL để trao đổi dữ liệu giữa
Client computer và SQL Server computer Một DBMS bao gồm databases, database
Trang 4engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trongDBMS.
SQL Server 2000 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rấtlớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùnglúc cho hàng ngàn user SQL Server 2000 có thể kết hợp "ăn ý" với các server khácnhư Microsoft Internet Information Services (IIS), E-Commerce Server, ProxyServer
SQL Server có 7 editions:
Enterprise : chứa đầy đủ các đặc trưng của SQL Server và có thể chạy tốt trên
hệ thống lên đến 32 CPUs và 64 GB RAM Thêm vào đó nó có các dịch vụ giúpcho việc phân tích dữ liệu rất hiệu quả (Analysis Services)
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 (advancedfeatures) khác, edition này có thể chạy tốt trên hệ thống lên đến 4 CPU và 2 GBRAM
Personal: được tối ưu hóa để chạy trên PC nên có thể cài đặt trên hầu hết các
phiên bản Windows kể cả Windows 98
Developer : có đầy đủ các tính năng của Enterprise Edition nhưng được chế
tạo đặc biệt như giới hạn số lượng người kết nối vào Server cùng một lúc Ðây làedition mà các bạn muốn học SQL Server cần có Edition này có thể cài trênWindows 2000 Professional hay Win NT Workstation
Desktop Engine (MSDE): đây chỉ là một engine chạy trên desktop và không
có user interface (giao diện) Thích hợp cho việc triển khai ứng dụng ở máy client.Kích thước database bị giới hạn khoảng 2 GB
Win CE : dùng cho các ứng dụng chạy trên Windows CE
Trang 5Chương 3: PHÂN TÍCH THIẾT KẾ - HỆ THỐNG THÔNG TIN
3.1 YÊU CẦU CHỨC NĂNG
3.1.1 Yêu cầu lưu trữ
Lưu trữ thông tin của Giáo vụ khoa (thêm, xóa, sửa)
Lưu trữ thông tin các Giảng viên (thêm, xóa, sửa)
Lưu trữ thông tin các Sinh viên (thêm, xóa, sửa)
Lưu trữ thông tin các Hệ đào tạo (thêm, xóa, sửa)
Lưu trữ thông tin các Ngành học (thêm, xóa, sửa)
Lưu trữ thông tin các Bộ môn (thêm, xóa, sửa)
Lưu trữ thông tin các Lớp học (thêm, xóa, sửa)
Lưu trữ thông tin các Môn học (thêm, xóa, sửa)
Lưu trữ thông tin Tài nguyên môn học (thêm, xóa, sửa)
Lưu trữ thông tin Tài nguyên dùng chung (thêm, xóa, sửa)
Lưu trữ thông tin các bài viết hay (thêm, xóa, sửa)
3.1.2 Yêu cầu tra cứu
Tra cứu các tài nguyên môn học theo tên giáo viên giảng dạy
Tra cứu các tài nguyên môn học theo tên lớp
Tra cứu các tài nguyên môn học theo tên môn học
Tra cứu theo loại tập tin (.ppt, doc, …)
3.1.3 Yêu cầu tính toán
Tính tổng số file và dung lượng các file tài nguyên môn học của từnggiáo viên đã upload
Tính tổng số file và dung lượng của các file tài nguyên dùng chung chosinh viên của tất cả giáo viên đã upload
Tính tổng số file và dung lượng của các file bài viết hay mà giáo viên đãupload
Trang 6.1 YÊU CẦU PHI CHỨC NĂNG
3.2.1 Tính tiến hóa : có quyền thay đổi thông tin (thêm, xóa, sửa)
Đối với Giáo vụ khoa :
Đối với Giáo viên :
+ Tài nguyên môn học
+ Tài nguyên dùng chung cho các lớp
+ Bài viết hay
3.2.2 Tính tiện dụng :
+ Giao diện thân thiện với người dùng
+ Truy cập các chức năng một cách linh hoạt
3.2.3 Tính hiệu quả :
Trang 7dùng chung cho các sinh viên của bộ môn Công nghệ Thông tin Giáo viên cũng cóthể upload những tài liệu và những bài viết hay cho sinh viên tham khảo.
+ Sinh viên có thể tìm kiếm và download những tài liệu học tập và nhữngtài liệu dùng chung
có quyền download tài nguyên trong giới hạn cho phép
Trang 8.2 THIẾT KẾ DỮ LIỆU
.2.1 Mô hình thực thể kết hợp (ERD)
3.3.1.1 Mô hình
Trang 9Hình 3.1 Mô hình thực thể kết hợp (ERD)
Trang 103.3.1.2 Danh sách các đối tượng
Bảng 3.1 Danh sách các thực thể
Trang 11 Danh sách các mối kết hợp
2 coquyen_gv Mối kết hợp giữa GIAOVIEN và QUYEN
3 coquyen_gvk Mối kết hợp giữa GIAOVU_KHOA và QUYEN
4 coquyen_sv Mối kết hợp giữa SINHVIEN và QUYEN
8 Dayhoc Mối kết hợp giữa GIAOVIEN, LOP, MONHOC,
HOCKY, NIENKHOA, TAINGUYEN_MH
9 Duocphancong Mối kết hợp giữa GIAOVIEN, LOP, MONHOC,
HOCKY, NIENKHOA
15 thuoc_loai Mối kết hợp giữa TAINGUYEN_MH và LOAI_TN
16 thuoc_loaitn Mối kết hợp giữa TAINGUYEN_CHUNG và LOAI_TN
17 thuoc_nganh Mối kết hợp giữa LOP và NGANH
Bảng 3.2 Danh sách các mối kết hợp
Trang 123.3.1.3 Bảng mô tả các thực thể, mối kết hợp
Mô tả chi tiết các thực thể:
Thực thể BAIVIETHAY (bài viết hay): dùng để lưu trữ thông tin của các bàiviết do các giáo viên upload lên trang web
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.3 Thực thể BAIVIETHAY
Thực thể BOMON (bộ môn): dùng để lưu trữ thông tin của các bộ môn thuộckhoa Kỹ thuật và Công nghệ
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.4 Thực thể BOMON
Trang 132 hoten_gv Nvarchar(100) Họ tên giáo viên
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
7 sodienthoai_gvk Characters (12) Số điện thoại giáo vụ khoa
Trang 14Bảng 3.6 Thực thể GIAOVU_KHOA
Thực thể HEDAOTAO (hệ đào tạo): là thực thể dùng để lưu trữ những thôngtin về các hệ đào tạo
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Trang 15Thực thể KHOA: là thực thể dùng để lưu trữ thông tin khoa đào tạo.
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.9 Thực thể KHOA
Thực thể LOAI_TN (loại tài nguyên): dùng để lưu trữ thông tin các loại tàinguyên
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
1 maloai_tn Varchar (10) Khóa chính Mã loại tài nguyên
Bảng 3.10 Thực thể LOAI_TN
Thực thể LOP (lớp): là thực thể dùng để lưu trữ những thông tin về các lớphọc của bộ môn Công nghệ Thông tin
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.11 Thực thể LOP
Trang 16Thực thể MONHOC (môn học): được dùng để lưu trữ thông tin của các mônhọc của các ngành học
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.12 Thực thể MONHOC
Thực thể NGANH (ngành): là thực thể dùng để lưu trữ những thông tin về cácngành học
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.13 Thực thể NGANH
Thực thể NIENKHOA (niên khóa): dùng để lưu lại các niên khóa
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.14 Thực thể NIENKHOA
Trang 17Thực thể QUYEN (quyền): dùng để lưu lại những quyền đăng nhập hệ thốngcủa người dùng.
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.15 Thực thể QUYEN
Thực thể SINHVIEN (sinh viên): dùng để lưu trữ những thông tin về sinh viêncủa bộ môn
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Diễn giải
Bảng 3.16 Thực thể SINHVIEN
Thực thể TAINGUYEN_CHUNG (tài nguyên chung): dùng để lưu lại nhữngthông tin của các tài nguyên dùng chung cho các lớp của bộ môn Công nghệ Thôngtin
Trang 18T Tên thuộc tính Kiểu dữ liệu
Ràng buộc
Diễn giải
1 ma_tnchung Nvarchar (20) Khóa chính Mã tài nguyên chung
Bảng 3.18 Thực thể TAINGUYEN_MH
Trang 19 Mô tả chi tiết các mối kết hợp:
Trang 293.3.2 Mô hình vật lý
3.3.2.1 Lược đồ cơ sở dữ liệu
Hình 3.19 Lược đồ cơ sở dữ liệu
Trang 30Bảng 3.19 Danh sách các Bảng
Trang 313.3.2.3 Mô tả chi tiết các Bảng
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.20 Table KHOA
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.21 Table NGANH
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.22 Table HEDAOTAO
Trang 32 Table BOMON:
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.24 Table GIAOVU_KHOA
Trang 33 Table GIAOVIEN:
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.25 Table GIAOVIEN
Trang 34 Table LOP:
Danh sách các thuộc tính:
ST
T
Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.26 Table LOP
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.27 Table SINHVIEN
Trang 355 MOTA_MH Text(16) Mô tả môn học
Bảng 3.28 Table MONHOC
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.29 Table TAINGUYEN_MH
Trang 36 Table TAINGUYEN_CHUNG:
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
1 MA_TNCHUNG Khóa chính Nvarchar(20) Mã tài nguyên chung
3 MALOAI_TN Khóa ngoại Varchar(10) Mã loại tài nguyên
6 DINHDANG_TNCHUNG Varchar(100) Định dạng tài nguyên
Danh sách các thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.31 Table BAIVIETHAY
Trang 37 Table NIENKHOA
Danh sách thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.33 Table NIENKHOA
Danh sách thuộc tính
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.34 Table LOAI_TN
Danh sách thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.35 Table DAYHOC
Danh sách thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.36 Table DUOCPHANCONG
Trang 38Danh sách thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.37 Table CUA_MON
Danh sách thuộc tính:
STT Thuộc tính Ràng buộc Kiểu dữ liệu Diễn giải
Bảng 3.38 Table QUYEN
Trang 393.3.3 Ràng buộc toàn vẹn
3.3.3.1 Ràng buộc toàn vẹn có bối cảnh là 1 quan hệ
RBTV1 (Ràng buộc toàn vẹn 1) : mỗi ngành học phải có một mã ngành đểphân biệt với mọi ngành học khác
Bảng 3.39 Tầm ảnh hưởng bối cảnh NGANH
RBTV2 (Ràng buộc toàn vẹn 2) : mỗi hệ đào tạo phải có một mã hệ đàotạo để phân biệt với mọi hệ đào tạo khác
Trang 40RBTV3 (Ràng buộc toàn vẹn 3) : mỗi bộ môn phải có một mã bộ môn đểphân biệt với mọi bộ môn khác.
Bảng 3.41 Tầm ảnh hưởng bối cảnh BOMON
RBTV4 (Ràng buộc toàn vẹn 4) : mỗi giáo viên phải có một mã số để phânbiệt với mọi giáo viên khác
- Bối cảnh: SINHVIEN
- Điều kiện: sv1, sv2 SINHVIEN, sv1 sv2
Trang 41RBTV6 (Ràng buộc toàn vẹn 6): mỗi môn học phải có một mã môn học đểphân biệt với mọi môn học khác.
Trang 42RBTV9 (Ràng buộc toàn vẹn 9): mỗi bài viết hay phải có một mã bài viết
để phân biệt với mọi bài viết khác
- Bối cảnh: LOP
- Điều kiện: lop1, lop2 LOP, lop1 lop2
lop1.MALOP lop2 MALOP
- Bối cảnh: QUYEN
- Điều kiện: q1, q2 QUYEN, q1 q2
q1.MAQUYEN q2 MAQUYEN
Trang 43RBTV1: mỗi giáo vụ khoa phải có một quyền đăng nhập hệ thống.
- Bối cảnh:GIAOVU_KHOA, QUYEN
Bảng 3.50 Tầm ảnh hưởng bối cảnh GIAOVU_KHOA – QUYEN
RBTV2: mỗi giáo viên phải có một quyền đăng nhập hệ thống
- Bối cảnh:GIAOVIEN, QUYEN
- Điều kiện: GIAOVIEN[MAQUYEN] QUYEN[MAQUYEN]
- Tầm ảnh hưởng:
Bảng 3.51 Tầm ảnh hưởng bối cảnh GIAOVIEN – QUYEN
RBTV3: mỗi sinh viên phải có một quyền đăng nhập hệ thống
- Bối cảnh:SINHVIEN, QUYEN
- Điều kiện: SINHVIEN[MAQUYEN] QUYEN[MAQUYEN]
- Bối cảnh: BOMON, KHOA
- Điều kiện: MOMON[MAKHOA] KHOA[MAKHOA]
- Tầm ảnh hưởng: