MỤC LỤC TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN MÔN LẬP TRÌNH WEB ĐỀ TÀI Xây Dựng Website Tin Tức Cho Trường THPT Giảng viên hướng dẫn Ths Đỗ Ngọc Sơn Nhóm 4 LT[.]
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO BÀI TẬP LỚN MÔN LẬP TRÌNH WEB
ĐỀ TÀI: Xây Dựng Website Tin Tức Cho Trường THPT Giảng viên hướng dẫn : Ths.Đỗ Ngọc Sơn
Trang 2Bảng Phân Công Công Việc
con
trang admin
Trang 3MỤC LỤC Trang
Chương I: NHIỆM VỤ, MỤC TIÊU VÀ KHẢO SÁT BÀI TOÁN
1.1 Nhiệm vụ và mục tiêu của bài toán 5
1.2 Khảo sát xác lập dự án 5
1.2.1 Đặc điểm của hệ thống quản lý 5
1 2.1.1 Phân cấp quản lý 5
1.2.1.2 Các luồng thông tin 6
1.2.1.3 Mô hình hệ thống thông tin trong quản lý 6
1.2.2 Yêu cầu của hệ thống thông tin trong hệ thống quản lý 7
1.2.2.1 Yều cầu của đơn vị 7
1.2.2.2 Yêu cầu của người sử dụng 7
1.2.3 Các bước xây dựng hệ thống thông tin trong quản lý 8
1.2.4 Tổng quan về hệ thống thông tin quản lý trong trường THPT 8
Chương II: KIẾN THỨC ÁP DỤNG 2.1 Phân tích & thiết kế hệ thống 10
2.1.1 Biểu đồ phân cấp chức năng (BFD - Bussiness Function Diagram) 10
2.1.1.1 Khái niệm 10
2.1.1.2 Các thành phần của BFD 10
2.1.1.3 Đặc điểm của biểu đồ phân cấp chức năng 11
2.1.1.4 Cách xây dựng BFD 12
2.1.1.5 Các bước xây dựng biểu đồ chức năng 12
2.1.2 Biểu đồ luồng dữ liệu (DFD - Data Flow Diagram) 13
2.1.2.1 Khái niệm 13
2.1.2.2 Mục đích 13
2.1.2.3 Thành phần chức năng (DFD- Data Flow Diagram) 13
2.1.2.4 Phương pháp xây dựng biểu đồ dòng dữ liệu (DFD) 17
3
Trang 42.2 Quản trị hệ thống 20
2.2.1 Danh sách người sử dụng .21
2.2.2 Nhật ký sự kiện 21
2.2.3 Kiểm tra và gỡ rối ứng dụng 21
2.2.4 Kết nhập và kết xuất cơ sở dữ liệu 21
2.2.5 Phân quyền người sử dụng (Role) 21
2.3 Ngôn ngữ lập trình 22
2.3.1 ASP.NET 22
2.3.2 Các điều khiển trên Asp.net 23
2.3.3 Điều khiển sự kiện trên server 23
2.3.4 Trang asp.net 23
2.3.5 Cơ bản về lập trình C# lập trình trong trang ASP.NET 24
2.3.5.1 Kiểu dữ liệu 25
2.3.5.2 Viết code C# trong file aspx 25
2.3.5.3 Tạo một lớp thư viện 25
2.3.5.4 Phương thức khởi dựng của lớp 25
2.4 Cơ sở dữ liệu 25
2.4.1 Khái niệm CSDL 26
2.4.2 Đăc điểm 26
2.4.3 Hệ quản trị CSDL 26
2.4.4 Ngôn ngữ truy vấn CSDL SQL 27
Chương III: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 3.1 Cơ cấu tổ chức 28
3.2 Mô hình phân cấp chức năng 28
3.3 Chức năng của các thành phần trong hệ thống 30
3.3.1 Quản lý hệ thống 30
Trang 53.3.2 Quản lý người dùng 30
3.3.3 Quản lý menu… 30
3.3.4 Quản lý tin tức… 30
3.3.5 Quản lý ảnh… .30
3.3.6 Trả lời người dùng 31
3.4 Mô hình luồng dữ liệu mức khung cảnh 31
3.5 Mô hình luồng dữ liệu mức đỉnh 32
3.6 Mô hình luồng dữ liệu mức dưới đỉnh 32
3.6.1 Chức năng quản lý thành viên 33
3.6.2 Chức năng quản trị nội dung website 33
3.6.3 Chức năng tìm kiếm tra cứu thông tin 34
3.7 Phân tích thiết kế cơ sở dữ liệu 37
Chương IV: CÀI ĐẶT 5.1 Trang chủ… 36
5.2 Trang tin tức về lĩnh vực văn học 36
5.3 Trang hiển thị chi tiết một bản tin 37
5.4 Trang Download tài liệu … 38
5.5 Trang thông tin tuyển sinh 38
5.6 Trang văn nghệ thơ ca 39
5.7 Trang đăng nhập website 39
5.8 Trang đăng ký thành viên 40
5.9 Trang tin tức giáo dục…… 40
5.10 Trang quản trị 41
5
Trang 65.11 Các lớp xử lý,phương thức,thủ tục lưu trữ……….46
Kết luận 44 Tài liệu tham khảo 45
Chương II: Giới Thiệu Một Số Kiến Thức Áp Dụng Trong Bài Toán
2.1 Phân tích & thiết kế hệ thống
Trang 7Mục đích
- Nhận diện và phân định các thành phần và mối quan hệ trong hệ thống
- Đầu vào của giai đoạn này là hồ sơ kết quả của khảo sát hệ thống
- Đầu ra bao gồm:
+ Biểu đồ chức năng (BFD - Bussiness Function Diagram)
+ Biểu đồ dòng dữ liệu (DFD - Data Flow Diagram)
+ Biểu đồ cấu trúc dữ liệu (ERD – Entity Relational Diagram)
2.1.1 Biểu đồ phân cấp chức năng (BFD - Bussiness Function Diagram)
2.1.1.1 Khái niệm
BFD là việc phân rã có thứ bậc đơn giản các chức năng của hệ thống trong miềnkhảo cứu thành các chức năng nhỏ hơn, cuối cùng thu được một cây chức năng
2.1.1.2 Các thành phần của BFD
- Ký hiệu chức năng là một hình chữ nhật bên
trong là tên chức năng
- Liên kết các chức năng là đường thẳng
-Tên chức năng là Động từ - bổ ngữ và động từ nên ở dạng thức mệnh lệnh
Ví dụ:
7
Quản lý Website
Đăng tin tức Quản lý bài viết
Quản lý TT
Trang 82.1.1.3 Đặc điểm của biểu đồ phân cấp chức năng
- Cung cấp cách nhìn tổng quát về chức năng của hệ thống, phạm vi cần phân tích
- Trình bày các chức năng của hệ thống ở dạng tĩnh, tức là không thể hiện được mốiquan hệ về chuyển giao thông tin giữa các chức năng, không thể hiện trình tự thựchiện xử lý thông tin
- Biểu đồ phân rã chức năng thường được sử dụng để bổ trợ cho việc xây dựng biểu
đồ luồng dữ liệu
- Chất lượng của tên đặt cho các chức năng là quan trọng cho thành công của hệthống Mỗi chức năng cần có một tên duy nhất, tên nên biểu thị thật sát, đầy đủ ýnghĩa của các chức năng con của chức năng được đặt tên Tên của chức năng cần phảiphản ánh được các chức năng của thế giới thực chứ không chỉ cho hệ thống thông tin
- Biểu đồ này rất gần với sơ đồ tổ chức, tuy nhiên không được nhầm lẫn giữa 2 sơđồ
2.1.1.4 Cách xây dựng BFD
BFD thể hiện các đầu việc mà hệ thống cần thực hiện để đạt được mục tiêu quản lý(quản lý cái gì?), việc xây dựng dựa trên cơ sở của bước khảo sát, vì vậy khảo sátcàng kỹ lưỡng thì việc xác định mô hình chức năng các đầy đủ chính xác
Trang 9• Thông tin có trên BFD:
- Thể hiện đầy đủ các chức năng mà hệ thống thực hiện
- Một chức năng lớn có thể được phân thành các chức năng nhỏ hơn
- Việc phân rã được tiến hành theo tiêu chí:
+ Theo bản chất xử lý (chức năng)
+ Theo bộ phận thực hiện
+ Theo dữ liệu phải xử lý
2.1.1.5 Các bước xây dựng biểu đồ chức năng:
- Xem cả hệ thống là 1 chức năng duy nhất, còn gọi là mức 0
- Phân rã khối chức năng ở mức trên thành các chức năng nhỏ hơn ở mức dưới, lầnlượt đánh số là mức 1, mức 2,
Từ chức năng chính này chúng ta phân rã thành các chức năng con để hình thànhnên một biểu đồ hình cây mà gốc ở trên
- Sơ đồ nên tương đối "cân bằng" theo nghĩa mức của các chức năng con thấpnhất nên được xác định tương đương như nhau
- Phân tích chức năng đưa ra những chi tiết quan trọng mà những chi tiết đó sẽđược dùng nhiều ở những giai đoạn sau của phân tích
2.1.2 Biểu đồ luồng dữ liệu (DFD - Data Flow Diagram)
Trang 10- DFD diễn tả tập hợp các chức năng của hệ thống và mối quan hệ chuyển giao thôngtin giữa các chức năng hay nói khác đi nó cung cấp bức tranh động về hệ thống.
- DFD được sử dụng là công cụ cơ bản trong tất cả các giai đoạn phân tích, thiết kế,trao đổi và lưu trữ dữ liệu
2.1.2.2 Mục đích
- Xác định yêu cầu của người sử dụng (NSD)
- Lập kế hoạch và minh hoạ các phương án cho nhà phân tích và NSD xem xét
- Là công cụ trao đổi giữa nhà phân tích và NSD do tính tường minh của DFD
- Làm tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống
Việc diễn tả biểu đồ được chia thành 2 mức:
• Biểu đồ luồng dữ liệu mức vật lý:
- Trong biểu đồ mức vật lý mô tả tất cả các chức năng xử lý, các phương tiện xử lý,các giá mang thông tin (phương tiện mang, vật mang) cùng với các mối liên quankhông gian và thời gian
- Biểu đồ này mô tả hệ thống làm việc như thế nào, do vậy nó dùng trong khảo sát
hệ thống hiện tại và thiết kế hệ thống mới
• Biểu đồ luồng dữ liệu mức logic (mức khái niệm, hay còn gọi là mức quan niệm)
- Biểu đồ này bỏ qua yếu tố vật lý, chỉ tập trung vào mô tả hệ thống làm gì
- Biểu đồ này chỉ quan tâm đến các chức năng nào cần xử lý trong hệ thống vànhững thông tin liên quan đến chức năng đó
2.1.2.3 Thành phần chức năng (DFD- Data Flow Diagram)
• Các thành phần của biểu đồ
- Chức năng xử lý (Process)
- Luồng thông tin (Data Flows)
- Kho dữ liệu (Data Store)
- Tác nhân ngoài (External Entity)
- Tác nhân trong (Internal Entity)
• Các chức năng xử lý (Process)
- Khái niệm: Chức năng là một quá trình biến đổi thông tin
- Ký hiệu chức năng
Trang 11- Tên chức năng: Có dạng Động từ + bổ ngữ nếu cần, cho phép hiểu một cách
vắn tắt chức năng làm gì Trong thực tế tên các chức năng phải trùng với tên đãđặt cho các chức năng trong sơ đồ chức năng nghiệp vụ
• Luồng dữ liệu (Dòng dữ liệu – Data Flow)
- Khái niệm: Đây là luồng thông tin vào hoặc ra của 1 chức năng xử lý
- Ký hiệu luồng thông tin: Là một đường kẻ có mũi tên, trên đó có viết tên của luồng
dữ liệu
Tên luồng dữ liệu phải là một danh từ, kèm thêm tính từ nếu cần, cho phép hiểu
vắn tắt nội dung của dữ liệu được chuyển giao
• Kho dữ liệu (Data Store)
- Khái niệm: Một kho dữ liệu là một dữ liệu (đơn hay có cấu trúc) được lưu
lại để có thể được truy nhập nhiều lần về sau
- Kí hiệu:
- Tên kho có dạng Danh từ + tính từ nếu cần và cho phép hiểu một cách vắn tắt nội
dung của dữ liệu được lưu dữ
Ví dụ: Hồ sơ học sinh, môn học, Danh sách hs
- Liên quan giữa kho và chức năng có các tình huống như sau:
11
<Tên chức năng>
<Tên chức năng>
<Tên kho>
<CN>
<Tên luồng>
Trang 12+ Cất hay ghi dữ liệu vào kho
+ Đọc dữ liệu từ kho
+ Cập nhật dữ liệu trong kho
• Tác nhân ngoài (External Entity)
Là 1 người, 1 nhóm người, 1 tổ chức hay 1 đối tượng (thực thể) ở bên ngoài hệthống, nhưng có trao đổi thông tin với hệ thống
<Tên kho>
<Tên CN>
Môn học
Mã môn hoc
<Tên kho>
<Tên CN>
Danh HS
Nên D/sách HS
Học lực
Xét nên lớp
Trang 13Sự có mặt của các nhân tố trên sơ đồ chỉ ra giới hạn hệ thống và định rõ mối quan
hệ của hệ thống với thế giới bên ngoài Điều quan trọng cần hiểu là "ngoài lĩnh vựcnghiên cứu" không nhất thiết là bên ngoài tổ chức VD: việc nghiên cứu hệ thống xử
lý đơn hàng đang được xem xét thì bộ phận kế toán, bộ phận mua hàng và các bộ phậnkho tàng có thể đều là nhân tố bên ngoài
Nhân tố bên ngoài là phần sống còn của hệ thống, chúng là nguồn gốc cung cấpthông tin cho hệ thống và là nơi nhận các sản phẩm của hệ thống
- Ký hiệu tác nhân ngoài là một hình chữ nhật
- Tên tác nhân ngoài là Danh từ
VD: Trường học, Học sinh , Giáo viên, Phòng giáo vụ
• Tác nhân trong (Internal Entity)
- Đây là 1 chức năng hay là 1 hệ thống con của hệ thống đang khảo sát được mô tả
ở trang khác của biểu đồ
- Ký hiệu: Hình chữ nhật thiếu 1 cạnh, có ghi tên là Động từ kèm bổ ngữ
• Chức năng xử lý thủ công
Một số chú ý t rong biểu đồ luồng dữ liệu :
- Trong biểu đồ không có 2 tác nhân ngoài trao đổi với nhau
- Không có trao đổi trực tiếp giữa 2 kho dữ liệu mà không thông qua chức năng xửlý
Trang 14- Kho đã có tên, nên luồng dữ liệu vào kho không cần tên, chỉ khi việc cập nhật,hoặc trích từ kho chỉ một phần thông tin ở kho, người ta mới dùng tên cho luồng
- Tác nhân ngoài không trao đổi với kho dữ liệu mà phải thông qua chức năng xử lý
- Trong biểu đồ luồng dữ liệu có khi nào không có tác nhân ngoài không ? Tại sao?:Tác nhân ngoài là phần sống còn của hệ thống, chúng là nguồn cung cấp thông tincho hệ thống cũng như chúng nhận sản phẩm thông tin từ hệ thống
2.1.2.4 Phương pháp xây dựng biểu đồ dòng dữ liệu (DFD)
- DFD cũng được chia thành các mức tương ứng với các mức trong biểu đồ phâncấp chức năng (BFD)
- Có 3 mức cơ bản được đề cập đến:
+ Mức 0: Biểu đồ luồng dữ liệu mức khung cảnh (Context Data Plow Diagram)
+ Mức 1: Biểu đồ luồng dữ liệu mức đỉnh (Top level Data Plow Diagram)
+ Mức 2: Biểu đồ luồng dữ liệu mức dưới đỉnh ( Levelling Data Plow Diagram)
• Biểu đồ luồng dữ liệu mức khung cảnh (Context Data Plow Diagram):
Đây là mô hình hệ thống ở mức tổng quát nhất, ta xem cả hệ thống như 1 chứcnăng Tại mức này hệ thống chỉ duy nhất có một chức năng Các tác nhân ngoài vàđồng thời các luồng dữ liệu vào ra từ tác nhân ngoài đến hệ thống được xác định
Sơ đồ ngữ cảnh bao gồm 1 vòng tròn trung tâm biểu thị toàn bộ hệ thống đangnghiên cứu là một chức năng được nối với mọi tác nhân ngoài hệ thống Các đườngnối thể hiện thông tin vào - ra hệ thống Ta có thể xây dựng DFD từ sơ đồ ngữ cảnhnày
+ Sơ đỗ ngữ cảnh (còn gọi là DFD mức khung cảnh)
Trang 15• Biểu đồ luồng dữ liệu mức đỉnh (Top level Data Flow Diagram)
- DFD mức đỉnh (mức 1): Đây là sự phân rã trực tiếp từ biểu đồ mức khung cảnh vàphải đáp ứng 1 số yêu cầu sau đây khi phân rã:
xử lý tin tức
Trang 16+ Bảo toàn các tác nhân ngoài và các luồng thông tin vào ( ra ) của hệ thống
+ Thay thế 1 chức năng duy nhất của hệ thống bởi nhiều chức năng con
+ Bổ sung thêm các luồng dữ liệu nội bộ và các kho dữ liệu cần thiết
• Biểu đồ luồng dữ liệu mức dưới đỉnh ( Levelling Data Plow Diagram)
- Các chức năng được định nghĩa riêng từng biểu đồ hoặc ghép lại thành 1 biểu đồtrong trường hợp biểu đồ đơn giản
- Các thành phần của biểu đồ tuân thủ nguyên tắc:
+ Về chức năng: phân rã chức năng cấp trên thành chức năng cấp dưới thấp hơn+ Luồng dữ liệu: vào/ra mức trên thì lặp lại ở mức dưới, bổ sung thêm các luồng dữliệu do phân rã các chức năng và thêm kho dữ liệu
+ Khodữ liệu dần dần xuất hiện theo nhu cầu nội bộ
+ Tác nhân ngoài: xuất hiện đầy đủ ở mức khung cảnh, ở mức dưới không thể thêmgì
- Ví dụ: từ mức đỉnh ta có dưới đỉnh định nghĩa như
sau:
B = E ⊕ F C = I ⊕ J D = H ⊕ L
X
X B
C
D K
Trang 172.2 Quản trị hệ thống
Quản trị hệ thống (Administration), trong đó bao gồm quản lý danh sách người sửdụng, phân quyền, sao lưu dự phòng cho cơ sở dữ liệu, theo dõi các sự kiện liên quanđến hệ thống và thực hiện một số các công việc khác để đảm bảo hoạt động cho hệthống
2.2.1 Danh sách người sử dụng: Để người sử dụng có thể vào hệ thống, đầu tiền cầnđăng ký vào danh sách người sử dụng, xác định các giao diện và các vai trò Ngườiquản lý hệ thống bao giờ cũng có thể biết được ai đang liên kết với cơ sở dữ liệu trongthời điểm hiện tại
2.2.2 Nhật ký sự kiện: Dùng để ghi nhận các sự kiện liên quan đến hệ thống và cácthao tác của người sử dụng Theo ngầm định thì chức năng này bị khoá, bởi vì khi sửdụng nó cần đòi hỏi một số chi phí về tài nguyên hệ thống Để mở chức năng này, cầnvào menu theo đường dẫn (Quản trị -> Tùy chỉnh nhật ký sự kiện” ("Administration->Event log options") và xác định mức độ quan trọng của các sự kiện cần thiết ghinhận vào trong Nhật ký sự kiện
2.2.3 Kiểm tra và gỡ rối ứng dụng: Việc kiểm tra cần được tiến hành khi nảy sinhnhững nghi vấn về các lỗi trong dữ liệu, sau khi xảy ra các sự cố, ví dụ như mất điện,hoặc được tiến hành thường xuyên để đề phòng những lỗi có thể phát sinh
Trang 182.2.4 Kết nhập và kết xuất cơ sở dữ liệu: Những lệnh này dùng để nạp cơ sở dữliệu từ tệp ngoài hoặc ngược lại, xuất dữ liệu ra tệp Việc tạo các phiên bản dự phòngkhông cần thiết làm thường xuyên hàng ngày, nhưng trong mỗi trường hợp, kỳ hạnlàm các công việc này phụ thuộc vào cường độ nhập và thay đổi dữ liệu Khi sử dụngphương án File-server, việc tạo bản sao lưu có thể thực hiện rất đơn giản bằng cáchsao chép các tệp trong cơ sở dữ liệu Trong phương án Client-server, có thể sử dụngcác công cụ có sẵn trong MS SQL-Server Cơ cấu kết nhập và kết xuất dữ liệu chophép chuyển đổi dữ liệu giữa các phưong án File-server và Client-server.
2.2.5 Phân quyền người sử dụng (Role)
Đối với một người sử dụng khi làm việc với các tập hợp dữ liệu, họ có thể có các phânquyền sau:
Tên phân quyền Cấp
độ
giải
Toàn quyền 4 Có toàn quyền đối với tập hợp dữ liệu, bao gồm các
quyền phía dưới và hơn Thiết kế, đóng
góp, đọc
3 Có thể xem, thêm, cập nhật, xóa, hiệu chỉnh và tùy
biến tập hợp dữ liệu Đóng góp, đọc 2 Có thể xem, thêm, cập nhật, xóa