Lợi ích mang lại: Tiện lợi nhanh chóng, tiết kiệm chi phí đi lại, tận dụng được thời gian- 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 1.2.2.1 Phương án lưu
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB WEBSITE BÁN GIÀY
Ngành: CÔNG NGHỆ THÔNG TIN
Giảng viên hướng dẫn: HUỲNH KHẮC DUY
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB WEBSITE BÁN GIÀY
Ngành: CÔNG NGHỆ THÔNG TIN
Giảng viên hướng dẫn: HUỲNH KHẮC DUY
TP.Hồ Chí Minh, 2020
Trang 3MỤC LỤC
MỤC LỤC 3
DANH MỤC HÌNH ẢNH 6
DANH MỤC BẢNG 7
LỜI CAM ĐOAN 8
CHƯƠNG 1: TỔNG QUAN 9
1.1 Tổng quan về 9
1.1.1 Khảo sát thực trạng 9
1.1.2 Đánh giá thực trạng 9
1.1.2.1 Ưu điểm 9
1.1.2.2 Nhược điểm 9
1.2 Nhiệm vụ đồ án 9
1.2.1 Đối tượng và phạm vi của ứng dụng 9
1.2.1.1 Đối tượng 9
1.2.1.2 Phạm vi 9
1.2.2 Mô tả phương án tổng quan 10
1.2.2.1 Phương án lưu trữ 10
1.2.2.2 Phương án khả thi 10
1.3 Cấu trúc đồ án 10
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 12
2.1 Các khái niệm và cơ chế hoạt động 12
2.1.1 Tổng quan về ASP.NET 12
2.1.1.1 Giới thiệu về ASP.NET 12
2.1.1.2 Mô hình MVC 12
Trang 42.1.2 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server 13
2.1.3 Xác định yêu cầu 14
2.1.3.1 Đặc tả chi tiết các loại yêu cầu 14
2.1.3.2 Lập danh sách các yêu cầu 15
2.2 Mô hình dữ liệu 17
2.2.1 Danh sách các thực thể 17
2.2.2 Sơ đồ thực thể các mối liên kết 18
2.2.3 Sơ đồ thực thể kết hợp 18
2.2.4 Sơ đồ tổng thể 19
2.2.5 Mô hình dữ liệu quan hệ 19
2.3 Thiết kế sơ đồ các chức năng 22
2.3.1 Danh sách chức năng 22
2.3.2 Hồ sơ phân tích 22
2.3.3 Kết quả từ hồ sơ phân tích 25
CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 26
3.1 Các thành phần chức năng hệ thống 26
3.1.1 Chức năng đăng nhập hệ thống 26
3.1.2 Chức năng ứng dụng 26
3.2 Thiết kế giao diện hệ thống 26
3.2.1 Trang Log In và Sign Up 26
3.2.2 Form Trang chủ 27
3.2.3 Form Giỏ hàng 27
3.2.4 Form Edit sản phẩm 28
3.2.5 Form Nhãn hàng 31
Trang 5CHƯƠNG 4: KẾT LUẬN 32
4.1 Kết quả đạt được 32
4.2 Đánh giá phần mềm 32
4.2.1 Ưu điểm 32
4.2.2 Nhược điểm 32
4.3 Hướng phát triển và mở rộng đề tài 32
TÀI LIỆU THAM KHẢO 33
Trang 6DANH MỤC HÌNH Ả
Hình 2 1 Mô hình MVC 12
Hình 2 2 SQL 13
Hình 2 3 Sơ đồ tổng thể 19
Hình 2 4 Lược đồ CSDL 19
Hình 2 5 Chức năng tra cứu 22
Hình 2 6 Chức năng chỉnh sửa giỏ hàng 23
Y Hình 3 1 Form log in 26
Hình 3 2 Form Sign up 27
Hình 3 3 Form trang chủ 27
Hình 3 4 Form giỏ hàng 28
Hình 3 5 Form danh sách sản phẩm 28
Hình 3 6 Form Chỉnh sửa 29
Hình 3 7 Form xoá giày 29
Hình 3 8 Form Thêm giày 30
Hình 3 9 Form Detail 30
Hình 3 10 Form nhãn hàng 31
Trang 7DANH MỤC BẢNG
Bảng 2 1 Bảng yêu cầu chức năng nghiệp vụ 16
Bảng 2 2 Bảng các yêu cầu chức năng hệ thống 17
Bảng 2 3 Bảng yêu cầu về chất lượng 17
Bảng 2 4 Bảng chứa thông tin tài khoản 20
Bảng 2 5 Bảng chứa thông tin khách hàng 20
Bảng 2 6 Bảng chứa thông tin đơn đặt hàng 21
Bảng 2 7 Bảng chứa thông tin chi tiết đơn hàng 21
Bảng 2 8 Bảng chứa thông tin giày 21
Bảng 2 9 Bảng chứa thông tin ngày sản xuất 22
Bảng 2 10 Bảng chứa chi tiết loại giày 22
Bảng 2 11 Kết xuất danh sách sản phẩm 24
Bảng 2 12 Kết xuất giỏ hàng 25
Bảng 2 13 25
Bảng 2 14 25
Trang 8LỜI CAM ĐOAN
Chúng em xin cam đoan các kết quả trong đồ án đều là kết quả thực nghiệm do tụi
em thực hiện Tất cả các tham khảo và trích dẫn từ những nghiên cứu liên quan đều được trình bày rõ ràng trong mục Tài liệu tham khảo
Sinh viên thực hiện
Trang 9 Hình thức mua bán online còn chưa phổ biến ở một số vùng quê.
Khó phù hợp với mẫu người tiêu dùng có tiêu chí “Tiền trao cháo múc”
Nhiều cửa hàng, chi nhánh, website dẫn đến bị loãng làm người tiêu dùng khó lựa chọn
1.2 Nhiệm vụ đồ án
1.2.1 Đối tượng và phạm vi của ứng dụng
Từ các vấn đề trên chúng ta cần xây dựng một website mà mọi người đều có thể tiếp xúc, thân thiện với mọi người
1.2.1.1 Đối tượng
Website được lập ra để giúp những người có sở thích mua sắm giày dép ghé thăm
và lựa chọn cho bản thân đôi ưng ý
1.2.1.2 Phạm vi
Mục tiêu: Cho phép người dùng tạo tài khoản để mua hàng
Mô tả: Cung cấp cho người dùng tài khoản để mua hàng, giỏ hàng chứa đôi
mà người dùng lựa chọn, họ có thể thêm sửa hoặc xoá nó
Trang 10 Lợi ích mang lại: Tiện lợi nhanh chóng, tiết kiệm chi phí đi lại, tận dụng được thời gian
- 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
1.2.2.1 Phương án lưu trữ
Cơ sở dữ liệu tập trung
- Là phương án đưa cơ sở dữ liệu về một nơi
- Giúp quản lý hàng hoá chặt chẽ hơn, tăng tính bảo mật vì mọi thao tác trên dữ liệu chỉ được thực hiện ở một nơi
- Tốc độ thao tác dữ liệu còn hạn chế do thực hiện nhiều thao tác cùng một lúc vào một dữ liệu ở một nơi
Các hệ quản trị cơ sở dữ liệu
Microsoft SQL Server1.2.2.2 Phương án khả thi
Sử dụng mô hình dữ liệu đã được nêu ở trên vì:
- Không yêu cầu tốc độ đường truyền cao, dễ dàng sao lưu và phục hồi dữ liệu, đảm bảo an toàn cho dữ liệu
- Không cần đầu tư quá nhiều chi phí
1.3 Cấu trúc đồ án
Chương 1: Tổng quan
- Tổng quan về vấn đề được nghiên cứu: tổng quan về vấn đề được nghiên cứu
Trang 11- Nhiệm vụ đồ án: Lý do hình thành đề tài, mục tiêu nghiên cứu, đối tượng, phạm vi giới hạn.
- Cấu trúc đồ án: Trình bày cấu trúc của đồ án gồm các chương và tóm tắttừng chương
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àng buộ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 12CHƯƠ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 về 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 trang webđộng, những ứng dụng web và những dịch vụ web Lần đầu tiên được đưa ra thị trườngvào tháng 1 năm 2002 cùng với phiên bản 1.0 của.NET framework, là công nghệ nối tiếpcủa Microsoft's Active Server Pages(ASP) ASP.NET được biên dịch dướidạ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ônngữ lập trình có bộ thư việc phải nói là cực kỳ đa dạng và phong phú, được cung cấp bởiNet Framework nên có nhiều ưu điểm rất nổi bật Chưa kể là ngôn ngữ lập trì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 qua ADO.net
2.1.1.2 Mô hình MVC
Hình 2 1 Mô hình MVC
MVC (Model – View - Controller) là một design pattern đã 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 3 thànhphần tách biệt nhau đó là Model, View, Controller Giống như trong cấu trúc Three –
Model
ViewController
Trang 13Tier, 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
Three – Tier thì trong đó gồm có 2 tầng Data Access Layer và tầng Business LogicLayer Hai tầng này là hai tầng tương đương với tầng model trong mô hình MVC
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ình 2 2 SQL
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ệu thườ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ương phá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àng củ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át triển ứngdụ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, Integration Service, Reporting service và Analysis Services
Trang 14DataBase 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
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 đi trong 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ác bả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óangang 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án khaiphá 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ản trịdoanh nghiệp thông minh và được quản lý qua dịch vụ web Báo cáo có thể được xâydự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
Trang 15 Yêu cầu chức năng nhiệm vụ:
- Xem giỏ hàng cá nhân
Yêu cầu phi chức năng – Liên quan đến người dùng
Tính tiến hoá: Cho phép người dùng sửa đổi khi người dùng có yêu cầu
Tính tiện dụng
Giao diện đơn giản, dễ sử dụng
Những dòng thông báo hiện lên khi người dùng nhập sai thông tin
Tính tương thích: dễ dàng cài đặt trên các loại máy tính mà không yêu cầu cấu
hình
Tính hiệu quả: Mọi thao tác được thực hiện nhanh chóng
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
Trang 16Bảng 2 1 Bảng yêu cầu chức năng nghiệp vụ
STT Công việc Loại côngviệc
Quy định/
Công thứcliên quan
Biểu mẫuliên quan Ghi chú
Chỉnh sửacác thôngtin sai lệchcủa tàikhoản
3 Thêm, sửa, xoágiỏ hàng Lưu trữ
Thêm hàngsửa, xoá, giỏhàng
Các biểu mẫu:
BM1: Tạo tài khoản
Trang 17Bảng 2 2 Bảng các yêu cầu chức năng hệ thống
Người dùng có toànquyền quyết định với tàikhoản của mình, với giỏ
hàng
Bảng 2 3 Bảng yêu cầu về chất lượng
1
Cho phép ngườidùng thay đổi giỏ
hàng của tài khoản Tiến hoá
Người dùng có thểthêm, sửa, xoá sảnphẩm trong giỏ hàng
mà họ muốn
2 Cách thức sử dụng Tương thích
Không cần cài đặt
Có thể sử dụng trênhầu hết các loạitrình duyệt phổ biếnhiện nay
tài khoản
Hiệu quả
Tối đa 30s cho mỗimẫu thông tinTối đa 10s cho rakết quả tìm kiếm
2.2 Mô hình dữ liệu
2.2.1 Danh sách các thực thể
Thực thể ADMIN(id,pwd,tenacc): Quản trị viên sẽ có một tài khoản riêng dùng đểquản lý website và trong trường hợp có 2 quan trị viên trở lên thì phải đảm bảo không bị trùng tên tài khoản(tenacc) Mỗi tài khoản được phân biệt bởi ID
Thực thể KHACHANG(MaKH, HoTen, Taikhoan, Matkhau, Email, DiachiKH, DienthoaiKH, Ngaysinh): Mỗi khách hàng sẽ có một tài khoản để sử dụng nhưng phải đảm bảo không bị trùng mã khách hàng (MaKH)
Trang 18 Thực thể GIÀY(MaGiay, TenGiay, Giaban, Mota, Anhbia, Ngaycapnhat,
Soluonton, MaNSX, MaLoai): Gồm nhiều loại giày với tên và giá bán khác nhau được phân biệt với nhau bằng mã giày (MaGiay)
Thực thể NSX(MaNSX, TenNSX, Diachi, DiaThoai): Các nhà sản xuất nhập giày được phân biệt bởi mã nhà sản xuất (MaNSX)
Thực thể LoaiGiay(MaLoai, TenLoai): Gồm 3 loại giày là giày nam, nữ và unisex được phân biệt bằng mã loại (MaLoai)
2.2.2 Sơ đồ thực thể các mối liên kết
Xét hai thực thể KHACHHANG và DONDATHANG
Ta thấy rằng mỗi tài khoản thuộc về một người dùng và mỗi người dùng có nhiềuđơn hàng Như vậy, hai thực thể KHACHHANG và DOTDATHANG liên kết vớinhau theo quan hệ một nhiều
Xét hai thực thể NSX và GIAY:
Ta thấy rằng mỗi loại giày thuộc về một nhà sản xuất và mỗi nhà sản xuất có nhiềuloại giày Như vậy, hai thực thể NSX và GIAY liên kết với nhau theo quan hệ mộtnhiều
2.2.3 Sơ đồ tổng thể
Trang 19Hình 2 3 Sơ đồ tổng thể
2.2.4 Mô hình dữ liệu quan hệ
Lược đồ cơ sở dữ liệu
Hình 2 4 Lược đồ CSDL
Bảng ADMIN:
Trang 20Bảng 2 4 Bảng chứa thông tin tài khoản
Bảng KHACHHANG:
Bảng 2 5 Bảng chứa thông tin khách hàng
Bảng DONDATHANG
Bảng 2 6 Bảng chứa thông tin đơn đặt hàng
Tinhtrangiaohan
g Tình trạnggiao hàng bit
Bảng CHITIETDONHANG
Trang 21Bảng 2 7 Bảng chứa thông tin chi tiết đơn hàng
Bảng GIAY
Bảng 2 8 Bảng chứa thông tin giày
Ngaycapnhat Ngày cập nhật datetime
Bảng NGAYSANXUAT
Bảng 2 9 Bảng chứa thông tin ngày sản xuất
Bảng LOAIGIAY
Bảng 2 10 Bảng chứa chi tiết loại giày
Trang 222.3 Thiết kế sơ đồ các chức năng
2.3.1 Danh sách chức năng
Website bán giày cần đáp ứng yêu cầu của người dùng về việc tra cứu thông tin các loại giày, thêm bớt giỏ hàng cá nhân, chỉnh sửa thông tin tài khoản
2.3.2 Hồ sơ phân tích
Hình 2 5 Chức năng tra cứu
Chức năng Tra cứu
Người dùng
Tra cứu thông tin
Biểu mẫu và quy tắc xử lý
D2D1
D3
Luồng dữ liệu
D1: Chuỗi ký tự D1 = D3
D3: Danh sách chứa thông tin chuỗi ký tự D1
Trang 23Hình 2 6 Chức năng chỉnh sửa giỏ hàng Bảng 2 11 Kết xuất danh sách sản phẩm
Kết xuất: Danh sách sản phẩm Quy tắc xử lý
Biểu mẫu và quy tắc xử lý
D1
D2
Luồng dữ liệu
D1 = D2: Thêm xoá sản phẩm trong giỏ hàng
Trang 24Bảng 2 12 Kết xuất giỏ hàng
MaDonHang Tự động cập nhật số lượng, mã giày, ngày đặt trong
giỏ hàng hiện tạiTra cứu thông tin về đơn hàng cũ:
- Tra cứu bằng mã đơn hàng
- Nếu có tồn tại trả về thông tin đơn hàng đã đặt
Bảng 2 14
Trang 25CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM
Tra cứu thông tin tài khoản cá nhân
Tra cứu thông tin sản phẩm
Thêm sản phẩm trong giỏ hàng
Xoá bớt sản phẩm trong giỏ hàng
3.2 Thiết kế giao diện hệ thống
3.2.1 Trang Log In và Sign Up
Hình 3 1 Form log in
Trang 26Hình 3 2 Form Sign up3.2.2 Form Trang chủ
Hình 3 3 Form trang chủ3.2.3 Form Giỏ hàng
Trang 27Hình 3 4 Form giỏ hàng3.2.4 Form Edit sản phẩm
Hình 3 5 Form danh sách sản phẩm
Trang 28Hình 3 6 Form Chỉnh sửa
Hình 3 7 Form xoá giày
Trang 29Hình 3 8 Form Thêm giày
Hình 3 9 Form Detail
Trang 303.2.5 Form Nhãn hàng
Hình 3 10 Form nhãn hàng
Trang 31CHƯƠNG 4: KẾT LUẬN
4.1 Kết quả đạt được
Xây dựng website bán hàng nói chung và website bán giày nói riêng không chỉ làviệc xây dựng đơn thuần mà đòi hỏi trước đó phải tiến hành một cách có hệ thống cácgiai đoạn khảo sát, phân tích thiết kế
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áckiến thức về lập trình và nắm được cách làm thế nào để xây dựng được một website Từ
đó, chúng em có thể xây dựng được những website tương tự như: website thương mạiđiện tử, các website quản lý,
4.2 Đánh giá phần mềm
4.2.1 Ưu điểm
Rút ngắn được thời gian chờ đợi của khách hàng
Sử dụng máy tính vào việc quản lý các hoá đơn cũng như hợp đồng dễ dàng, tìmkiếm nhanh chóng và thuận tiện hơn Việc lưu trữ các thông tin về khách hàng,hợp đồng và các hoá đơn đơn giản, không cần phải có nơi lưu trữ lớn
Việc thêm, xoá, sửa các sản phẩm, chỉnh sửa giỏ hàng thuận tiện nhanh chóng
Với những chức năng xử lý sẵn có, web site giúp công việc của người sử dụngquản lý nhẹ nhàng hơn
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ầnmềm…
4.3 Hướng phát triển và mở rộng đề tài
Đề tài “Website bán giày” cần được mở rộng và xem xét trên nhiều khía cạnh hơn
để phần mềm được hoàn thiện, giúp cho việc quản lý các hoá đơn dễ dàng hơn, giảm bớt
sự cồng kềnh của sổ sách… Trong đề tài này, chúng em chỉ mới phân tích và xây dựngphần mềm đơn giản, cần phải phát triển và làm rõ thêm: Thống kê các khoản thu bằngbiểu đồ Và nhiều chức năng khác