BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ BÀI TẬP LỚN Học phần Lập trình Web Lớp Lập trình Web 01 Nhóm thực hiện Nhóm 8 THIẾT KẾ TRANG WEB TIN TỨC NỀN TẢNG MVC ASP NET Giảng viên hướng dẫn Ths Lê Văn Thành Sinh viên thực hiện Hồ Văn Lợi (NT) MSSV 18574802010127 Lớp 59K2 Phạm Hoàng Linh MSSV 18574802010078 Lớp 59K1 Dương Hoàng Long MSSV 18574802010180 Lớp 59K1 Nguyễn Bá Lương MSSV 18574802010103 Lớp 59K2 Nghệ An – 2022 MỤC LỤC LỜI CẢM ƠN 1 CHƯƠNG I GIỚI THIỆU CHUNG 2 1.
Trang 1TRƯỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ
BÀI TẬP LỚN Học phần: Lập trình Web Lớp: Lập trình Web_01 Nhóm thực hiện: Nhóm 8
THIẾT KẾ TRANG WEB TIN TỨC NỀN TẢNG
MVC ASP.NET
Giảng viên hướng dẫn: Ths.Lê Văn Thành
Sinh viên thực hiện:
Trang 2MỤC LỤC
DANH MỤC HÌNH VẼ
Hình 2.2 Sơ đồ phân cấp chức năng
Hình 2.3.2 Biểu đồ use case tổng quát của website
Hình 2.3.3: Biểu đồ usecase đăng nhập
Hình 2.3.4: Biểu đồ use case quản lý người dùng
Hình 2.3.5: Biểu đồ usercase quản lý bài viết
Hình 2.3.6 Biểu đồ use case tìm kiếm
Hình 2.4.1 Biểu đồ hoạt động chức năng thêm bản tin Hình 2.4.2 Biểu đồ hoạt động sửa bản tin
Hình 2.4.3 Biểu đồ hoạt động chức năng xóa bản tin
Hình 2.4.4 Biểu đồ hoạt động chức năng tìm kiếm
Hình 3.2 Mô hình thực thể liên kết
Trang 3Hình 4.1 Giao diện trang chủ
Hình 4.2 Giao diện trang quản trị Hình 4.3 Giao diện trang đăng nhập Hình 4.4 Giao diện trang thêm bài viết
Trang 4LỜI CẢM ƠN
Báo cáo bài tập lớn môn lập trình Web với đề tài “Thiết kế trang Web tin tứcbằng nền tảng Asp.net” là kết quả của quá trình cố gắng không ngừng của cả nhóm vàđược sự giúp đỡ, động viên khích lệ của các thầy cô, bạn bè trong lớp Qua trang viếtnày nhóm 8 chúng tôi xin gửi lời cảm ơn tới những người đã giúp đỡ nhóm trong suốtkhoảng thời thời gian học tập - nghiên cứu khoa học vừa qua
Nhóm chúng tôi xin tỏ lòng kính trọng và biết ơn sâu sắc đối với thầy Lê VănThành đã trực tiếp tận tình hướng dẫn cũng như cung cấp tài liệu thông tin khoa học cầnthiết cho bài tập này
Trong một khoảng thời gian nhóm chúng tôi đã cố gắng hết sức học tập và nghiên
để cho ra sản phẩm cuối cùng, nhưng đây cũng là lần đầu tiếp cận và chưa có nhiều kinhnghiệm cũng như hiểu biết nên không thể tránh khỏi những sai sót Nhóm rất mong sẽ
có được những ý kiến đánh giá khách quan và góp ý mang tính xây dựng từ thầy côcũng như các bạn đọc, để nhóm có thể hoàn thiện bài tập cũng như lấy đó là bài học chosau này
Chúng tôi xin chân thành cảm ơn!
Trang 5CHƯƠNG I: GIỚI THIỆU CHUNG
1.1 Tổng quan đề tài
1.1.1 Tính cấp thiết đề tài
Công nghệ thông tin đã tạo nên một xã hội toàn cầu, nơi mà mọi người có thểtương tác và liên lạc với nhau một cách nhanh chóng và hiệu quả Trong hơn 15 nămqua, lĩnh vực công nghệ thông tin Việt Nam đã đạt được nhiều thành tựu quan trọng
Ngày nay, công nghệ thông tin dần trở thành ngành kinh tế mũi nhọn của đấtnước, có tỉ lệ đóng góp cho tăng trưởng GDP đất nước ngày càng cao Công nghệ thôngtin giờ đây đã có mặt ở nhiều phương diện trong cuộc sống hàng ngày của chúng ta, từthương mại đến giải trí và thậm chí cả văn hóa, xã hội và giáo dục…
Bên cạnh đó việc phổ biến sử dụng Internet đã tạo ra một bước ngoặt mới trongđịnh hướng phát triên ngành Công nghệ thông tin của nước ta cùng với nhu cầu sử dụngcác phương tiện truyền thông để trao đổi thông tin ngày cáng phát triển mạnh Việc cậpnhật các thông tin và tin tức từ nhiều lĩnh vực trong xã hội như: kinh tế, chính trị, côngnghệ, thể thao,… từ lâu đã là nhu cầu bức thiết của con người và khi công nghệ thôngtin phát triển thì việc tiếp cận các thông tin của con người dễ dàng hơn bao giờ hết
Bây giờ bạn sẽ không phải mất một khoản phí nào để mua một tờ báo giấy màtrong đó chỉ có những thông tin của ngày hôm đó Với việc sở hữu cho mình một chiếcđiện thoại thông minh hay một máy tính có kết nối internet chúng ta hoàn toàn có thểbiết toàn bộ những thông tin về mọi lĩnh vực mà bạn cần một cách nhanh chóng nhất
Trang 6Công nghệ đã thay đổi cách tiếp cận thông tin kéo theo đó cũng là sự phát triểncủa các trang tin tức, các tờ báo số cũng tăng theo Do số lượng người dung trải dài trênmọi độ tuổi cũng như như cầu về tin tức khác nhau Vì vậy cần thiết phải xây dựngnhững website có thiết kế chức năng, giao diện phù hợp và đáp ứng được số lượngngười dung lớn cùng một lúc.
1.1.2 Mục đích đề tài
Người dùng có thể tiếp cận cũng như tìm kiếm các thông tin khác nhau trên trangtin tức Website sẽ cập nhật các tin tức ngay lập tức từ cơ sơ dữ liệu, cho phép ngườiquản trị viên được phân quyền thao tác các công việc như sau:
- Tìm kiếm các bài báo, tin tức theo chủ đề
- Theo dõi cũng như thống kê được các bài đăng
- Tạo tài khoản đăng ký, dăng nhập
- Liên hệ với trang tin tức
Thay đổi, thêm mới hoặc xóa bỏ thông tin hình ảnh về các tin tức quản trị viênmuốn giới thiệu cho người dùng Về tổ chức lưu trữ, thực hiện các yêu cầu sau:
- Thêm, xóa, sửa thông tin, hình ảnh về các tin tức được đăng tải lên, phục vụ chocông tác quản lý, thống kê tình hình hoạt động của trang web
- Thêm xóa, sửa thông tin, hình ảnh về các tin tức
1.2 Công cụ phát triển
1.2.1 Giới thiệu về ASP.NET
ASP.NET là một khung ứng dụng web được thiết kế và phát triển bởi Microsoft
Nó là ngôn ngữ mã nguồn mở và là một tập hợp con của NET Framework và là sự kếthừa của ASP cổ điển (Active Server Pages) Với phiên bản 1.0 của NET Framework,
nó được phát hành lần đầu tiên vào tháng 1 năm 2002
ASP.NET được xây dựng trên CLR (Common Language Runtime) cho phép cáclập trình viên thực thi mã của mình bằng bất kỳ ngôn ngữ NET nào (C #, VB, v.v.) Nóđược thiết kế đặc biệt để làm việc với HTTP và cho các nhà phát triển web để tạo các
Trang 7trang web động, ứng dụng web, trang web và dịch vụ web vì nó cung cấp tích hợp tốtHTML, CSS và JavaScript.
.NET Framework được sử dụng để tạo ra nhiều ứng dụng và dịch vụ nhưConsole, Web và Windows, v.v Nhưng lập trình ASP.NET chỉ được sử dụng để tạo cácứng dụng web và dịch vụ web Đó là lý do tại sao chúng ta gọi ASP.NET là một tập hợpcon của NET Framework
1.2.2 Đặc điểm của ASP.NET
• Code Behind Mode/ Trạng thái code rời
Đây là đặc trưng đầu tiên của nền tảng ASP.net dành cho các lập trình viên.Thông qua việc tách rời các hoạt động code trên máy tính, việc duy trì các ứng dụng củanền tảng ASP.net sẽ dễ dàng hơn Các lập trình viên hiện đang sử dụng file aspx khi viếtứng dụng trên nền tảng này Vì thế, nếu có một tập tin với các đuôi khác nhau:Mypage.aspx.cs sẽ biểu thị rõ hơn cho các đoạn mã code của trang Vì vậy, nhà pháthành vẫn luôn tạo ra tập tin riêng cho website, tập tin riêng dành cho các coder để có thểtiến hành viết các đoạn mã
• State Management/Quản lý trạng thái
ASP.Net có các phương tiện để kiểm soát quản lý trạng thái, trong khi HTTPđược biết đến là một giao thức "không trạng thái" Lấy một ví dụ về ứng dụng giỏ hàng:khi một user đã chọn lựa xong những gì mình muốn mua và đưa ra đưa ra quyết địnhmua hàng trên trang web, người đó sẽ nhấn nút gửi
Ứng dụng cần ghi nhớ các mục mà người dùng đã chọn mua Đây là hành độngghi nhớ trạng thái của một ứng dụng tại một thời điểm trong hiện tại Vì HTTP là giaothức không trạng thái nên khi user truy cập các web bán hàng, HTTP sẽ không lưu trữthông tin trên các giỏ hàng
Do đó, sẽ cần thêm một số thao tác coding bổ sung để đảm bảo các giỏ hàng sẽđược chuyển đến trang bán hàng Việc triển khai như vậy có thể trở nên phức tạp tại mộtvài thời điểm Nhưng ASP.Net có thể quản lý trạng thái thay cho bạn nhờ tính năng ghinhớ giỏ hàng và chuyển các mục đã được chọn mua qua trang bán hàng
• Caching – Bộ nhớ Cache
ASP.Net cũng có thể thực hiện chức năng của Caching, qua đó cải thiện hiệu suấtlàm việc cho ứng dụng Với việc lưu bộ nhớ đệm cache, các trang thường xuyên đượcngười dùng yêu cầu có thể được lưu trữ ở một vị trí tạm thời Các trang này có thểđược truy xuất nhanh hơn và người dùng có thể nhận được các phản hồi tốt hơn Nhờ
vậy, bộ nhớ đệm có thể giúp cải thiện đáng kể hiệu suất của ứng dụng
1.2.3 Cơ sở dữ liệu SQL Server
Trang 8Bất kì một trang website nào cũng sẽ có một khối lượng dữ liệu cần phải lưu trữ.Đối với các trang web bán hàng thì đó có thể là dữ liệu về khách hàng, dữ liệu về nguồnhàng, đối với các các trang web học tập thì đó sẽ là thông tin sinh viên hay tài liệu về bàigiảng Các trang tin tức cũng vậy dữ liệu về các tin tức, về người viết bài hay thông tintài khoản quản trị cũng là các dữ liệu quan trọng cần thiết phải lưu trữ Và SQL là hệquản trị cơ sở dữ liệu mà chúng tôi chọn để làm việc đó.
Hiện nay, những website lớn, hoạt động với lượng người dùng đông đảonhư mạng xã hội Facebook, Yahoo, hay Google, Twitter,… đều đang sử dụng hệ quản trị
dữ liệu SQL Server để hỗ trợ cho việc lưu trữ thông tin được thực hiện hiệu quả Từ đó
có thể thấy tính hữu dụng, phổ biến của SQL Server trong lĩnh vực thiết kế và phát triểnwebsite
CHƯƠNG 2: PHÂN TÍCH , THIẾT KẾ
- Có rất nhiều lớp dùng trong biểu đồ lớp, ở đây chúng ta chỉ xét đến và sử dụng 3 loạilớp chính là : lớp biên, lớp điều khiển và lớp cơ sở dữ liệu:
+ Lớp biên: là lớp thể hiện phần giao diện mà người dùng trực tiếp tương tácvới hệ thống qua những giao diện của lớp này
+ Lớp thực thể: là lớp biểu diễn cho những thực thể có mối quan hệ với nhau
và liên quan đến hệ thống
Trang 9+ Lớp điều khiển: là lớp trung gian giữa lớp biên và lớp thực thể Lớp nàyđóng vai trò lấy và xử lý dữ liệu để hiển thị ra lớp biên.
• Biểu đồ hoạt động
- Biểu đồ hoạt động là biểu đồ mô tả các dòng công việc (work flow), dòng nghiệp vụ(business flow) của một đối tượng hay phương thức trong một hệ thống
2.2 Biều đồ phân cấp chức năng
Hình 2.2 Sơ đồ phân cấp chức năng
Trang 101 Admin + Adminstrator là tác nhân giữ vai trò chính của
website: Quyền quản lý là quyền cao nhất của hệthống.Đây cũng là người chịu trách nhiệm lớn nhất
Những người giữ vai trò quản lý chính có thể phânquyền cho các nhân viên trong website
+ Tác nhân Adminstrator có thể thực hiện được tất
cả các chức năng của website như: Tạo,quản lý tàikhoản thành viên, quản lý và phân quyền cácchuyên mục, Đăng sửa xóa tin bài…
+ Tác nhân Adminstrator có quyền thêm, sửa,xóa,cập nhật thông tin mới
một số quyền giới hạn do Adminstrator cấp cho
+ Đăng ký tài khoản thành viên khi muốn tham giawebsite
+ Đăng tin mới: Khi có thông tin mới cần đăng thìUsers cập nhật thông tin và đăng lên website
+ Sửa thông tin: Khi cần update, sửa thông tin thìUsers sẽ vào bài viết đó và sửa thông tin cho chínhxác
+ Xóa thông tin: Khi thông tin quá cũ và không cầnthiết thì Users có quyền xóa khỏi CSDL
và visitor
Đăng nhập vào hệ thốngtheo đúng thông tin đã đăng kí
Trang 11sửa xóa tài khoản nhân viên, người dùng trong
hệ thống
sửa xóa bài viết theo chuyên mục
2.3.2 Biểu đồ Usercase mức tổng quát
Hình 2.3.2 Biểu đồ use case tổng quát của website
2.3.3 Biểu đồ usercase đăng nhập
Hình 2.3.3: Biểu đồ usecase đăng nhập
Tác nhân : admin/ users và visitor
Trang 12Mô tả: Chức năng này cho phép Admin và các thành viên đăng nhập vào hệ thống để sửdụng các chức năng của Website Khi các thành viên muốn thao tác với các chức năngcủa hệ thống bắt buộc phải đăng nhập theo đúng thông tin đã đăng kí trước đó
• Dòng sự kiện chính:
- Bắt đầu Admin và thành viên đăng nhập vào website
- Hệ thống yêu cầu Admin và thành viên đăng nhập vào website
- Admin và thành viên nhập tên và mật khẩu
- Hệ thống kiểm tra tên và mật khẩu đúng với thông tin đã đăng kí và cho phép ngườidùng đăng nhập vào website
- Nếu người dùng chưa nhập “ Tên đăng nhập ” và “mật khẩu ” mà nhấn vào nút “Đăng nhập ” thì coi như đăng nhập không hợp lệ
• Dòng sự kiện phụ: Nếu người dùng nhập tài khoản và mật khẩu sai thì website
sẽ báo lỗi và yêu cầu người dùng đăng nhập lại, nếu người dùng không muốnđăng nhập nữa thì chỉ xem được thông tin các bài viết
2.3.4 Biểu đố Usercase quản lý người dùng
Hình 2.3.4: Biểu đồ use case quản lý người dùng
Tác nhân: Admin
Mô tả: Chức năng này cho phép Admin quản lý các thành viên (users) trong hệthống Website Admin được phép tạo tài khoản cho người dùng và cấp phát quyền chongười dùng đó hoặc sửa, xóa người dùng
• Dòng sự kiện chính
- Admin truy xuất vào chức năng quản lý người dùng
- Admin chọn người dùng mới tạo tài khoản bằng cách nhập thông tin yêucầu và cấp phát quyền của người dùng đó đối với hệ thống
- Admin chọn người dùng để chỉnh sửa thông tin
Trang 13- Tất cả các tùy chọn được lưu lại và gửi tới webserver để cập nhật vào cơ
sở dữ liệu
2.3.5 Biểu đồ usercase quản lý bài viết
Hình 2.3.5: Biểu đồ usercase quản lý bài viết
Tác nhân: Admin/ users
Mô tả: Admin/ users được quyền cập nhật thông tin bài viết mới, sửa, xóa bài viết saukhi đăng nhập hệ thống với quyền tương ứng
• Dòng sự kiện chính:
- Admin/ users truy xuất vào chức năng quản lý bài viết
- Admin/ users cập nhật thông tin cho bài viết như: mã bài viết, tiêu đề, ảnh,nội dung…
- Admin/ users sau khi cập nhật đầy đủ thông tin có thể sửa thông tin hoặxóa bài viết
- Tất cả các tùy chọn được lưu lại và gửi tới webserver để cập nhật vào cơ
sở dữ liệu
2.3.6 Biểu đồ Usecase tìm kiếm
Trang 14Hình 2.3.6 Biểu đồ use case tìm kiếm
Tác nhân: Visiter/Admin
Mô tả: Tìm kiếm thông tin các bài viết
• Tác nhân chính:
- Admin click trên nút tìm kiếm ở trang chủ và đánh từ khóa (thông tin muốn tìm kiếm)
- Trình duyệt sẽ gửi từ khóa mà visitor muốn tìm kiếm tới webserver
- Webserver truy vấn CSDL và gửi lại những thông tin tìm kiếm cho visitor
- Visitor xem bản tin vừa tìm được
2.4 Biểu đồ hoạt động
2.4.1 Đặc tả biểu đồ hoạt động Thêm bản tin
Hình 2.4.1 Biểu đồ hoạt động chức năng thêm bản tin
Đặc tả truy trình hoạt động thêm bản tin:
- Người dùng yêu cầu thêm mới bản tin
- Hệ thống sẽ hiển thị giao diện thêm mới bản tin
- Sau đó hệ thống yêu cầu người dùng nhập thông tin cho bản tin để hoàn thànhquy trình thêm mới bản tin với các thông tin như: mã tin, tiêu đề, nội dung, ảnh,tác giả, ngày thêm
- Người dùng nhập các thông tin thì hệ thống sẽ kiểm tra các dữ liệu đầu vào xemđúng hay không Kết quả lúc này sẽ trả ra 2 giá trị: đúng hoặc sai
- + Nếu đúng thì cho phép thêm mới bản tin và việc thêm mới bản tin thành công
Trang 15- + Ngược lại nếu sai thì hệ thống yêu cầu nhập lại và quay lại việc nhập thông tin
và kiểm tra thông tin đã nhập
- Kết thúc quy trình thêm mới bản tin
2.4.2 Đặc tả biểu đồ hoạt động sửa bản tin
Hình 2.4.2 Biểu đồ hoạt động sửa bản tin
- Admin sửa bản tin và hệ thống hiển thị giao diện sửa bản tin Admin sửa bản tin
và bản tin mới sẽ được cập nhật
- Kết thúc quy trình sửa bản tin
Trang 162.4.3 Đặc tả biểu đồ hoạt động xóa bản tin
Hình 2.4.3 Biểu đồ hoạt động chức năng xóa bản tin
Đặc tả truy trình hoạt động xóa bản tin:
- Admin xóa bản tin
- Hệ thống sẽ hiển thị giao diện xóa bản tin(Admin có thể xóa 1 bản tin hoặc lựachọn xóa nhiều bản tin cùng lúc)
- Sau khi chọn chức năng xóa bản tin Hệ thống hỏi lại bản đã chắc chắn muốnxóa chưa:
+ Nếu không đồng ý thì hệ thống sẽ hủy việc xóa bản tin và kết thúc quá trìnhxóa và trường hợp này việc xóa bản tin không thành công
+ Nếu đồng ý, hệ thống yêu cầu Admin chọn danh sách các bài viết muốn xóa
và chấp nhận xóa Hệ thốngtrả ra kết quả bạn đã xóa bản tin thành công
- Kết thúc quy trình xóa bản tin
Trang 172.4.4 Đặc tả biểu đồ hoạt động tìm kiếm
Hình 2.4.4 Biểu đồ hoạt động chức năng tìm kiếm
Đặc tả truy trình hoạt động tìm kiếm thông tin:
- Admin yêu cầu tìm kiếm thông tin bất kì
- Lúc này Admin sẽ tương tác việc tìm kiếm thông qua giao diện trang chủ của hệthống
- Hệ thống yêu cầu Admin nhập thông tin muốn tìm kiếm ở phần đầu trang chủ
- Việc tìm kiếm được thực hiên Hệ thống căn cứ vào thông tin cần tìm kiếm củaAdmin để thao tác trong cơ sở dữ liệu
- Kết quả trả ra theo yêu cầu tìm kiếm của Admin
- Kết thúc quy trình tìm kiếm thông tin
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ CƠ SỞ DỮ LIỆU