Từ những lý do trên, cùng với sự hướng dẫn của thầy Huỳnh Khắc Duy, chúng em thực hiện đề tài “Blog tin tức” để vận dụng những kiến thức đã được học vào thực tiễn, xây dựng một trang viế
Trang 1ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB
BLOG TIN TỨC
Giảng viên hướng dẫn : HUỲNH KHẮC DUY
TP Hồ Chí Minh, 2020
MỤC LỤC
Trang 2Trang bìa
MỤC LỤC 3
LỜI MỞ ĐẦU 5
CHƯƠNG 1 TỔNG QUAN 6
1.1 Tổng quan về vấn đề được nghiên cứu 6
1.1.1 Khảo sát thực trạng 6
1.1.2 Đánh giá thực trạng 6
1.1.2.1 Ưu điểm 6
1.1.2.2 Nhược điểm 6
1.2 Nhiệm vụ đồ án 6
1.2.1 Đối tượng và phạm vi của ứng dụng 6
1.2.1.1 Đối tượng 6
1.2.1.2 Phạm vi 6
1.2.1.3 Ràng buộc tổng quan hệ thống 7
1.2.2 Mô tả phương án tổng quan 7
1.2.2.1 Phương án lưu trữ 7
1.2.2.2 Phương án khả thi 8
1.3 Cấu trúc đồ án 8
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 9
2.1 Các khái niệm và cơ chế hoạt động 9
2.1.1 Tổng quan về C#: 9
2.1.2 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server 9
2.1.3 Xác định yêu cầu 11
2.2 Mô hình quan niệm dữ liệu 15
2.2.3.1 Danh sách các thực thể 15
2.2.3.2 Sơ đồ thực thể các mối liên kết 17
2.2.3.3 Sơ đồ thực thể kết hợp (ERD – Entity Relationship Diagram) 19
2.2.3.4 Sơ đồ tổng thể : 19
2.2.3.5 Mô hình dữ liệu quan hệ 20
Lược đồ cơ sở dữ liệu 20
2.3 Thiết kế sơ đồ các chức năng: 22
1 Danh sách chức năng 22
2 Hồ sơ phân tích 22
3 Kết quả từ hồ sơ phân tích: 24
Trang 3CHƯƠNG 3 KẾT QUẢ THỰC NGHIỆM 25
3.1 Các thành phần chức năng của hệ thống 25
3.2 Thiết kế giao diện hệ thống 25
3.2.1 Form Đăng nhập 25
3.2.2 Form Trang chủ 27
3.2.3 Form PhongTro 28
3.2.4 Form Người thuê 29
3.2.4 Form Dịch vụ 31
3.2.5 From Hợp đồng 32
3.2.6 Form Chi Tiết Hợp Đồng 33
3.2.7 Form Hoá Đơn 34
3.2.8 Form Chi Tiết Hoá Đơn 35
3.2.9 Form Thống Kê 36
3.2.10 Form Xuất Excel 37
3.2.11 Đổi mật khẩu và đăng xuất 38
3.2.12 Form Đổi mật khẩu 38
3.2.13 Thông tin phiên bản 39
CHƯƠNG 4 KẾT LUẬN 39
4.1 Kết quả đạt được 39
4.2 Đánh giá phần mềm 39
4.2.1 Ưu điểm 39
4.2.2 Nhược điểm 40
4.3 Hướng phát triển và mở rộng đề tài 40
Tài liệu tham khảo 41
Trang 4LỜI MỞ ĐẦU
Với cuộc sống đang ngày càng được công nghệ hóa, những ứng dụng, phần mềm
là những thứ thiết yếu giúp xã hội dễ dàng phát triển hơn Một trong những lĩnh vựcđang được ứng dụng tin học hóa rất phổ biến ở nước ta là lĩnh vực giáo dục, được thểhiện dưới đa dạng các hình thức
Các lớp học Internet, diễn đàn trao đổi, các blog học tập là những hình thức họctiện lợi cho mọi người ở mọi lứa tuổi, việc học trực tuyến được ghi nhận mang lạidoanh thu lớn, nhất là tại 8 quốc gia đứng đầu thế giới về đào tạo trực tuyến, gồm: Mỹ,
Ấn Độ, Anh, Hàn Quốc, Nam Phi, Malaysia, Trung Quốc Con số thu về 51,5 tỷ USD
từ lĩnh vực đào tạo trực tuyến toàn cầu vào năm 2016 đã cho thấy tốc độ phát triển củangành này Theo Economist, số người đăng ký học trực tuyến trên thế giới tăng từkhoảng 60 triệu người (năm 2016) lên khoảng 70 triệu người (năm 2017)
Từ những lý do trên, cùng với sự hướng dẫn của thầy Huỳnh Khắc Duy, chúng
em thực hiện đề tài “Blog tin tức” để vận dụng những kiến thức đã được học vào thực
tiễn, xây dựng một trang viết bài với những chức năng cơ bản giúp đóng góp phát triểncộng động giáo dục đào tạo trực tuyến
Do chưa có nhiều kinh nghiệm nghiên cứu, thực hành nên đề tài thực hiện cònnhiều thiếu sót, chúng em mong nhận được đóng góp ý kiến của thầy để đề tài đượchoàn thiện hơn
Chúng em xin chân thành cảm ơn!
Sinh viên thực hiện
Trang 5CHƯƠNG 1 TỔNG QUAN 1.1 Tổng quan về vấn đề được nghiên cứu
Từ các vấn đề trên, chúng ta cần phải xây dựng hệ thống thông tin dễ truy cập,
tiện lợi và dễ sử dụng Từ đó trang Blog tin tức được tạo nên.
1.2.1 Đối tượng và phạm vi của ứng dụng
Trang 6b) Mô tả
Người dùng truy cập trang web và chọn chủ đề quan tâm, trang web sẽ cung cấp thôngtin cho người dùng
c) Lợi ích mang lại
Tạo sự tiện dụng, nhanh chóng cho người sử dụng
Tiết kiệm được chi phí
Tận dụng được thời gian
d) Các bước thực hiện để hoàn thành dự án
Lập kế hoạch phát triển hệ thống
Phân tích hệ thống
Thiết kế
Kiểm tra
Biên soạn tài liệu và hướng dẫn sử dụng
1.2.2 Mô tả phương án tổng quan
Chương 2: Cơ sở lý thuyết
Các khái niệm và phương pháp bao gồm các công nghệ, hệ thống, các ràngbuộc, … để giải quyết nhiệm vụ của đồ án
Chương 3: Kết quả thực nghiệm
Giao diện và đặc điểm chức năng của chương trình
Chương 4: Kết luận
Những kết luận chung, khẳng định những kết quả đạt được
Trang 7CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Các khái niệm và cơ chế hoạt động
2.1.1 Tổng quan về Asp.net :
2.1.1.1 Giới thiệu Asp.net:
ASP.NET là một nền tảng ứng dụng web (web application framework) được pháttriển và cung cấp bởi Microsoft, cho phép những người lập trình tạo ra những trangweb động, những ứng dụng web và những dịch vụ web Lần đầu tiên được đưa ra thịtrường vào tháng 1 năm 2002 cùng với phiên bản 1.0 của.NET framework, là côngnghệ nối tiếp của Microsoft's Active Server Pages(ASP) ASP.NET được biên dịchdưới dạng Common Language Runtime (CLR), cho phép những người lập trình viết
mã ASP.NET với bất kỳ ngôn ngữ nào được hỗ trợ bởi.NET language ASP.NET làngôn ngữ lập trình có bộ thư việc phải nói là cực kỳ đa dạng và phong phú, được cungcấp bởi Net Framewrork nên có nhiều ưu điểm rất nổi bật Chưa kể là ngôn ngữ lậptrình này còn được hỗ trợ rất tốt về XML và khả năng truy cập cơ sở dữ liệu quaADO.net
2.1.1.2 Mô hình MVC:
MVC (Model – View - Controller) là một design partern đã tồn tại rất lâu trongngành công nghệ phần mềm Một ứng dụng viết theo mô hình MVC sẽ bao gồm 3thành phần tách biệt nhau đó là Model, View, Controller Giống như trong cấutrúc Three – Tier, mô hình MVC giúp tách biệt 3 tầng trong mô hình lập trình web, vìvậy giúp tối ưu ứng dụng, dễ dàng thêm mới và chỉnh sửa code hoặc giao diện
Model: ở phần trước mình đã nhắc lại cho các bạn về 3 tầng trong mô hình
Model
ViewController
Trang 8Three – Tier thì trong đó gồm có 2 tầng Data Access Layer và tầng BusinessLogic Layer Hai tầng này là hai tầng tương đương với tầng model trong mô hìnhMVC.
View: là tầng giao diện, hiển thị dữ liệu được truy xuất từ tầng model Tầng nàytương đương với tầng Presentation Layer trong cấu trúc Three – Tier
Controller: đây là tầng giúp kết nối giữa tầng model và tầng view trong mô hìnhMVC, có nghĩa là nếu phía client yêu cầu hiển thị dữ liệu thì controller gọi giữ liệu từmodel và trả về cho view vì view tương tác trực tiếp với client
2.1.2 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server
Hệ quản trị cơ sở dữ liệu Microsoft SQL Server (MSSQL) là một trong những hệquản trị cơ sở dữ liệu thông dụng nhất hiện nay Đây là hệ quản trị cơ sở dữ liệuthường được sử dụng trong các hệ thống trung bình, với ưu điểm có các công cụ quản
lý mạnh mẽ giúp cho việc quản lý và bảo trì hệ thống dễ dàng, hỗ trợ nhiều phươngpháp lưu trữ, phân vùng và đánh chỉ mục phục vụ cho việc tối ưu hóa hiệu năng
SQL Server luôn được Microsoft cải tiến để nâng cao hiệu năng, tính sẵn sàngcủa hệ thống, khả năng mở rộng và bảo mật, cung cấp nhiều công cụ cho người pháttriển ứng dụng được tích hợp với bộ Visual Studio do Microsoft cung cấp SQL Server
có 4 dịch vụ lớn là Database Engine, Intergration Service, Reporting service vàAnalysis Services
DataBase Engine: được phát triển để thực thi tốt hơn với việc hỗ trợ cả dữ liệu
có cấu trúc và dữ liệu phi cấu trúc (XML)
Khả năng sẵn sàng của hệ thống được nâng cao, hỗ trợ các chức năng: Databasemirroring (cơ sở dữ liệu gương), failover clustering , snapshots và khôi phục dữ liệunhanh
Trang 9 Việc quản lý chỉ mục được thực hiện song song với việc hoạt động của hệthống Người dùng có thể thêm chỉ mục, xây dựng lại chỉ mục hay xóa một chỉ mục đitrong khi hệ thống vẫn được sử dụng.
Chức năng phân vùng dữ liệu được hỗ trợ: Người dùng có thể phân vùng cácbảng và chỉ mục cũng như quản lý phân vùng dữ liệu một cách dễ dàng Việc hỗ trợphân vùng dữ liệu giúp nâng cao hiệu năng hoạt động của hệ thống
Dịch vụ đồng bộ hóa dữ liệu được mở rộng với việc hỗ trợ mô hình đồng bộhóa ngang hàng Đây là dịch vụ giúp đồng bộ hóa dữ liệu giữa các máy chủ dữ liệu,giúp mở rộng khả năng của hệ thống
Dịch vụ tích hợp (Integration Service) thiết kế lại cho phép người dùng tích hợp
dữ liệu và phân tích dữ liệu từ nhiều nguồn khác nhau Hỗ trợ việc quản lý chất lượng
dữ liệu và làm sạch dữ liệu, một công việc quan trọng trong tiến trình ETL
Dịch vụ phân tích dữ liệu (Analysis Service): cung cấp khung nhìn tích hợp vàthống nhất về dữ liệu cho người dùng, hỗ trợ việc phân tích dữ liệu
Công cụ khai phá dữ liệu (Data mining) được tích hợp hỗ trợ nhiều thuật toánkhai phá dữ liệu, hỗ trợ cho việc phân tích, khai phá dữ liệu và xây dựng các hệ thống
hỗ trợ ra quyết định cho người quản lý
Dịch vụ xây dựng quản lý báo cáo (Reporting Service) dựa trên nền tảng quảntrị doanh nghiệp thông minh và được quản lý qua dịch vụ web Báo cáo có thể đượcxây dựng dễ dàng với ngôn ngữ truy vấn MDX Thông qua các công cụ trên BusinessIntelligent, người dùng dễ dàng truy cập báo cáo và trích xuất ra nhiều định dạng khácnhau thông qua trình duyệt web
2.1.3 Xác định yêu cầu
2.1.3.1 ĐẶC TẢ CHI TIẾT CÁC LOẠI YÊU CẦU:
2.1.3.1.1 Yêu cầu chức năng- nghiệp vụ:
2.1.3.1.1.1 Lưu trữ:
Các bài viết cần có đầy đủ các thông tin như tiêu đề, nội dung, có danh mục để
dễ phân loại
Các bài viết cần khẳng định được quyền sở hữu
2.1.3.1.1.2 Chỉnh sửa: Đối với mỗi loại thông tin sẽ có chức năng chỉnh sửa.
Trang 10 Cần thay đổi thông tin bài viết ( tiêu đề, nội dung).
2.1.3.1.1.3 Tra cứu:
Cần có chức năng tìm kiếm theo bài viết để dể dàng tìm lại những bài viết
đã xem hoặc những bài viết có chủ đề cần tìm
2.1.3.1.3 Yêu cầu phi chức năng – Liên quan đến người dùng:
Tính tiện dụng
Giao diện đơn giản, dễ sử dụng
Tính tương thích: dễ dàng cài đặt trên cái loại máy tính không yêu cầu cấu hìnhcao
Tính hiệu quả: Mọi thao tác được thực hiện nhanh chóng,
2.1.3.1.4 Yêu cầu phi chức năng – Liên quan đến chuyên viên tin học:
Bảo trì
2.1.3.2 LẬP DANH SÁCH CÁC YÊU CẦU:
BẢNG YÊU CẦU CHỨC NĂNG NGHIỆP VỤ
STT Công việc Loại công việc Quy định/ Công
thức liên quan
Biễu mẫuliên quan Ghi chú
1 Tạo bài viết Lưu trữ
Tạo các bài viết yêucầu đầy đủ cáctrường thông tin
Chỉnh sửa cácthông tin sai lệchhoặc cần cập nhập
3 Xóa Xóa bài viết Xóa mọi thông tin
về bài viết
tin về bài viết
Trang 11BẢNG YÊU CẦU VỀ CHẤT LƯỢNG
Trang 122.2 Mô hình quan niệm dữ liệu
2.2.3.1 Danh sách các thực thể
a) Thực thể Account
Account (TENDANGNHAP, MATKHAU)
Diễn giải: Admin khi đăng nhập sẽ được tự chọn tên tài khoản (Username), mật
khẩu (Password) để quản lí trang web, những vẫn phải đảm bảo là không bị trùngEmail và Username
b) Thực thể CHUDE
CHUDE (MACHUDE, TENCHUDE)
Diễn giải: Mỗi chủ đề có một MACHUDE (khóa chính) để phân biệt với các chủ
đề khác TENCHUDE để biết được chủ đề nào
c) Thực thể TACGIA
TACGIA (MATACGIA, TENTACGIA)
Diễn giải: Mỗi tác giả có một MATACGIA (khóa chính) để phân biệt với các
tác giả khác TENTACGIA để biết được ai là người viết bài
d) Thực thể TIN
TIN (MATIN, TENTIN, MOTA, NGAYDANG, MATACGIA, MACHUDE,MAANH, CHITIET)
Diễn giải: Mỗi tin đăng có một MATIN (khóa chính) để phân biệt với các bài
đăng khác, TENTIN để biết được tiêu đề của bài đăng, MOTA để tóm tắt nộidung, NGAYDANG để biết được ngày đăng bài, MAANH để phân biệt cáchình ảnh khác nhau, CHITIET để hiện thị toàn bộ nội dung của bài đăng
Trang 132.2.3.2 Sơ đồ thực thể kết hợp (ERD – Entity Relationship Diagram)
2.2.3.4 Sơ đồ tổng thể
Trang 15 Chức năng đăng nhập hệ thống:
o Đăng nhập.
o Đăng xuất.
Chức năng ứng dụng:
o Thêm bài viết.
o Xem bài viết.
o Sửa bài viết.
o Xoá bài viết.
o Tra cứu thông tin bài viết.
Trang 163.2 Thiết kế giao diện hệ thống
3.2.1 Trang đăng nhập
Đây là trang chạy đầu tiên của ứng dụng
Trang 173.2.2 Form Trang chủ
3.2.3 Lọc theo chủ đề
Trang 183.2.4 Trang thông tin chi tiết
3.2.5 Trang quản lí tin tức của quản trị viên.
Trang 193.2.6 Trang thêm tin tức.
3.2.7 Trang sửa tin tức.
Trang 203.2.8 Trang xóa tin tức
3.2.9 Trang Details.
Trang 21CHƯƠNG 4 KẾT LUẬN 4.1 Kết quả đạt được
Xây dựng được cơ bản Website quản lý thông tin báo chí giúp người truy cập cóthể nắm bắt thông tin nhanh chóng trong nhiều lĩnh vực khác nhau
Đứng trước xu thế phát triển của công nghệ thông tin như vũ bão hiện nay thìviệc xây dựng website quản lý thông tin báo chí là cần thiết và quan trọng trong việcgiúp mọi người nắm bắt thông tin và giải trí Qua việc nghiên cứu xây dựng đề tài này,chúng em đã phần nào củng cố được các kiến thức về lập trình web và nắm được cáchlàm thế nào để xây dựng được một phần mềm Từ đó, chúng em có thể nắm bắt và xâydựng được những Website tương tự như: Website đọc sách, quản lý nhân viên, cửahàng…
4.2 Đánh giá phần mềm
4.2.1 Ưu điểm
Đơn giản hóa việc tìm hiểu tin tức của người dùng
Tra cứu thông tin nhanh chóng
Sử dụng máy tính vào việc quản lý thông tin giúp tìm kiếm nhanh chóng vàthuận tiện hơn
Việc lưu trữ, chỉnh sửa thông tin cũng trở nên dễ dàng cho người viết
4.2.2 Nhược điểm
Để xây dựng được một hệ thống quản lý tốt cần đầu tư chi phí vào máy móc,phần mềm…
Giao diện chưa được tối ưu đẹp mắt
Một số bất cập trong việc sửa xóa hoặc kiểm soát thông tin
4.3 Hướng phát triển và mở rộng đề tài
Đề tài “website blog tin tức” cần được mở rộng và xem xét trên nhiều khía cạnh
hơn để được hoàn thiện, giúp cho việc quản lý thông tin dễ dàng hơn Trong đề tài này,chúng em chỉ mới phân tích và xây dựng website đơn giản, cần phải phát triển và làm
rõ thêm nhiều chức năng khác như:
Trang 22 Giao diện riêng dành cho người đọc.
Comment đóng góp ý kiến của người đọc
Liên kết với các website khác như facebook, … để mở rộng và quảng bácho trang web (và kiếm thêm tiền quảng cáo)
Trang 23Tài liệu tham khảo
Kiến thức môn học Lập trình web và sự hướng dẫn của thầy Huỳnh Khắc Duy, Dương Thành Phết
Tài liệu tham khảo tập hợp từ nhiều đồ án và nhiều trang website