➢ Mô hình ứng dụng 3 lớp Mô hình 2 lớp phần nào đáp ứng được các yêu cầu khắc khe của một ứng dụng phân tán, tuy nhiên, khi khối lượng dữ liệu lớn, ứng dụng đòi hỏi nhiều xử lý phức tạp
TỔNG QUAN
T ỔNG QUAN VỀ ASP.NET
1.1.1 Tổng quan về lập trình ứng dụng web Ứng dụng Web là một hệ thống phức tạp, dựa trên nhiều yếu tố: phần cứng, phần mềm, giao thức, ngôn ngữ và thành phần giao diện Trong phần này, chúng tôi sẽ giới thiệu sơ lược cho bạn về các thành phần cơ bản của ứng dụng Web: HTTP (giao thức trao đổi tài nguyên) và HTML (ngôn ngữ xây dựng trang web)
1.1.1.1 HTTP và HTML - Nền móng của Kỹ thuật lập trình web
Lập trình ứng dụng web cơ bản bắt đầu với giao thức HyperText Transfer Protocol (HTTP), cho phép trao đổi thông tin giữa các máy tính qua mạng.
HTTP được xác định qua URLs (Uniform Resource Locators), với cấu trúc chuỗi có định dạng như sau: http: // [: ] [ [? ]]
URL bắt đầu bằng tiền tố `http://`, tiếp theo là tên host/địa chỉ IP server (có thể kèm số cổng), đường dẫn đến file cần truy cập, và cuối cùng là tham số truy vấn (query string).
VD: Phân tích địa chỉ http://www.comerus.com/comerus6/store/index.aspx
Trang web index.asp được lưu trữ trong thư mục /comersus6/store tại Web Server với host là www.comersus.com
- Internet: là một hệ thống gồm nhiều máy tính ở khắp nơi trên thế giới nối lại với nhau
- WWW: World Wide Web (mạng toàn cầu), thường được dùng khi nói về Internet
- Web Server: Máy tính lưu trữ các trang web
- Web Client: Máy tính dùng để truy cập các trang web
- Web Browser: Phần mềm dùng để truy cập web
Một số web browser phổ biến: Internet Explorer, Netscape Navigator, Avant Browser, Opera, …
Trang web HTML là tập tin văn bản sử dụng ngôn ngữ đánh dấu siêu văn bản (HTML) để xây dựng.
Ngôn ngữ đánh dấu HTML sử dụng các ký hiệu quy định sẵn (được gọi là tag) để trình bày nội dung văn bản
Nội dung + Định dạng = Kết quả hiển thị
Hình 1 1 – HTML (Hypertext Markup Language)
1.1.1.2 Tìm hiểu mô hình ứng dụng
➢ Mô hình ứng dụng 2 lớp
Mô hình 2 lớp là kiến trúc ứng dụng phân tán đơn giản, phổ biến, với Database Server xử lý dữ liệu và Client chịu trách nhiệm nhận và hiển thị dữ liệu.
▪ Dữ liệu tập trung -> đảm bảo dữ liệu được nhất quán
▪ Dữ liệu được chia sẻ cho nhiều người dùng
Quá trình tra cứu và cập nhật dữ liệu diễn ra trên Database Server, trong khi hiển thị kết quả thực hiện ở Client, gây khó khăn trong bảo trì và nâng cấp hệ thống.
▪ Khối lượng dữ liệu truyền trên mạng lớn -> chiếm dụng đường truyền, thêm gánh nặng cho Database Server
➢ Mô hình ứng dụng 3 lớp
Mô hình hai lớp hiệu quả với ứng dụng phân tán quy mô nhỏ Tuy nhiên, với dữ liệu lớn, xử lý phức tạp và số lượng người dùng tăng, mô hình này trở nên không khả thi.
Kiến trúc 3 lớp (Client-Application Server-Database Server) tối ưu hiệu năng bằng cách xử lý logic nghiệp vụ tại Application Server, giảm tải cho Database Server và tập trung Client vào hiển thị dữ liệu.
▪ Hỗ trợ nhiều người dùng
▪ Giảm bớt xử lý cho Client -> Không yêu cầu máy tính ở Client có cấu hình mạnh
▪ Xử lý nhận và hiển thị dữ liệu tập trung tại Application Server -> dễ quản lý, bảo trì và nâng cấp
▪ Xử lý truy cập dữ liệu tập trung tại Database Server
❖ Phải sử dụng thêm một Application Server -> Tăng chi phí
1.1.2 Giới thiệu về ASP.NET
➢ Tìm hiểu về Net Phatform
.Net Phatform bao gồm Net Framework và những công cụ được dùng để xây dựng, phát triển ứng dụng và dịch vụ ASP.Net
Những sản phẩm công nghệ Net của Microsoft bao gồm: MSN.Net, Office.Net, Visual Studio.Net và Windows Server 2003 được biết đến với tên gọi Windows Net Server
Visual Studio NET là môi trường phát triển tích hợp (IDE) hỗ trợ nhiều ngôn ngữ lập trình như C++ NET, VB NET, ASP NET, C# và J#, dựa trên nền tảng NET Framework Các ngôn ngữ này có cú pháp tương đồng.
➢ Tìm hiểu về NET Framework
Hình 1 5 – Kiếm trúc NET Framework
Cung cấp các chức năng xây dựng ứng dụng
.NET Framework quản lý việc xây dựng và triển khai ứng dụng bằng các lớp đối tượng Khả năng thực thi các chức năng này phụ thuộc vào hệ điều hành.
.NET Framework relies on Windows APIs for basic functions like displaying message boxes, while more complex operations, such as using COM components, require Microsoft Transaction Server (MTS), and web functionalities necessitate Internet Information Server (IIS).
Lựa chọn hệ điều hành phù hợp để cài đặt và sử dụng NET Framework rất quan trọng Việc cài đặt NET Framework trên Windows 2000, 2000 Server, XP, XP.NET và 2003 Server sẽ đơn giản và thuận tiện hơn cho lập trình viên.
Common Language Runtime (CLR) là cầu nối giữa ứng dụng NET và hệ điều hành Windows, quản lý việc thực thi ứng dụng, tối ưu hóa tài nguyên hệ thống, ngăn chặn lệnh nguy hiểm và thực hiện các chức năng quan trọng thông qua các thành phần như Class loader, Just-In-Time compiler, Garbage collector, Exception handler, COM marshaller và Security engine.
Windows XP.NET và Windows 2003 tích hợp sẵn CLR, cho phép ứng dụng chạy trên máy tính khác mà không cần cài đặt, chỉ cần lệnh xcopy đơn giản.
❖ Bộ thư viện các lớp đối tượng
Nếu phải giải nghĩa từ "Framework" trong thuật ngữ NET Framework thì đây là lúc thích hợp nhất
Framework là tập hợp các lớp đối tượng hỗ trợ lập trình viên xây dựng ứng dụng Ví dụ như MFC (Visual C++), JFC (Java), và NET Framework là các bộ thư viện cho lập trình viên C++, Java và NET tương ứng.
M Ô TẢ HỆ THỐNG
Hệ thống web bán hàng chuyên nghiệp quản lý hoạt động kinh doanh phụ kiện thời trang, bao gồm ví da, thắt lưng, tối ưu hóa công tác quản lý và bán hàng cho shop.
Quản lý thông tin sản phẩm (mã, tên, xuất xứ, giá) trên cơ sở dữ liệu giúp tạo báo cáo thống kê chi tiết về ví và thắt lưng, bao gồm toàn bộ thông tin liên quan.
Website bán hàng cập nhật liên tục thông tin sản phẩm mới, sự kiện và sản phẩm hot, thông qua tin tức và bài báo.
Hệ thống quản lý theo dõi doanh số bán hàng mỗi ngày và gửi báo cáo cho quản lý Dựa trên báo cáo này, quản lý kiểm tra tồn kho và đặt hàng bổ sung từ nhà cung cấp khi cần thiết.
Hệ thống web bán phụ kiện thời trang tối ưu hóa trải nghiệm mua sắm, đảm bảo tốc độ tải nhanh, dung lượng nhẹ, chất lượng sản phẩm tốt và hỗ trợ quản lý bán hàng hiệu quả.
• Thêm/sửa/xóa/tìm kiếm danh mục sản phẩm
• Thêm/sửa/xóa/tìm kiếm danh sách sản phẩm
• Thêm/sửa/xóa/tìm kiếm hóa đơn
• Thêm/sửa/xóa/tìm kiếm người dùng
• Thêm/sửa/xóa/tìm kiếm tin tức
• Thêm/sửa/xóa/tìm kiếm khách hàng
• Hiển thị danh mục sản phẩm
• Hiển thị danh sách sản phẩm
• Hiển thị danh dách hóa đơn
• Hiển thị chi tiết hóa đơn
• Hiển thị danh sách người dùng
• Hiển thị danh sách tin tức
• Hiển thị báo cáo thống kê
PHÂN TÍCH VÀ THIẾT KẾ BÀI TOÁN
2.1 Mô tả yêu cầu bài toán:
Bài viết trình bày về việc xây dựng website bán mũ bảo hiểm trực tuyến, giải quyết vấn đề quản lý hiệu quả thông tin sản phẩm (tên, cấu hình, hình ảnh, giá cả, tình trạng kho ) nhằm tiết kiệm thời gian cho cả người mua và người bán Website sẽ trưng bày sản phẩm theo từng hãng (AGV, DAINESE, TOURATECH, ) và cho phép người quản trị thêm mới, sửa đổi hoặc xóa thông tin sản phẩm, đồng thời cập nhật dữ liệu trực tiếp đến người dùng.
Khách vãng lai chỉ xem thông tin sản phẩm và bình chọn, cần đăng ký thành viên để mua hàng Đăng nhập bằng tên truy cập và mật khẩu mới được phép mua sắm.
Khách hàng tự chọn sản phẩm, thêm vào giỏ hàng và điều chỉnh số lượng; thanh toán trực tuyến bắt buộc dùng thẻ tín dụng (Visa, Mastercard, American Express) gồm mã thẻ, mã bảo mật, hạn sử dụng, cùng thông tin giao hàng và số điện thoại.
2.2 Mô tả các loại người dùng: Đối với khách vãng lai (guest):
- Được xem thông tin về các mặt hàng điện thoại, các thông tin liên quan đến cửa hàng, liên hệ, góp ý với trang web
- Không được quyền mua hàng Đối với thành viên trang web:
- Được xem thông tin về các mặt hàng, các thông tin liên quan đến cửa hàng, góp ý, liên hệ tới trang web
- Được quyền mua hàng khi mặt hàng đó còn trong kho hàng Mọi sản phẩm thành viên mua sẽ được cho vào giỏ hàng của họ
Khách hàng có thể xóa sản phẩm khỏi giỏ hàng trước khi thanh toán Quản trị viên website lưu ý điều này.
Cơ sở dữ liệu sản phẩm được cập nhật thường xuyên với thông tin về các mặt hàng mới nhập.
- Được quyền sửa đổi các thông tin sao cho phù hợp với mặt hàng
- Được quyền xóa bỏ đi các loại điện thoại khi sản phẩm đó đã hết hoặc cửa hàng không còn kinh doanh các mặt hàng đó nữa
Trang web cho phép người dùng đóng góp ý kiến và nhận hồi đáp qua email Thành viên được phân quyền tham gia tích cực.
2.3 Sơ đồ phân rã chức năng:
Hình 2.1 – Sơ đồ phân rã chức năng
• Thành viên: Là những thành viên có nhu cầu mua sắm sản phẩm mà mình đang lựa chọn Có thể gọi chung là Khách
• Xem thông tin sản phẩm: Là những thông tin của sản phẩm mà khách đang tìm mua
Bán hàng mũ bảo hiểm
Xem thông tin sản phẩm Bình chọn sản phẩm Đăng kí thành viên Mua hàng Góp ý
Thêm mới sản phẩm Sửa đổi sản phẩm Xóa sản phẩm Quản lý thành viên
• Đăng kí thành viên: Là những mục thành viên có thể thêm vào, sửa lỗi và xóa thông tin về bản thân
• Mua hàng: Chức năng này được người dùng sử dụng để mua sắm sản phẩm
• Góp ý: Chức năng này được người dùng sử dụng để góp ý về dịch vụ trước và sau mua, chất lượng sản phẩm, hậu đãi khách hàng,…
Quản trị website bao gồm các chức năng: thêm, sửa, xóa sản phẩm; quản lý thành viên và thanh toán.
2.4 Biểu đồ luồng dữ liệu mức khung cảnh:
Hình 2.2 – Biểu đồ luồng dữ liệu mức khung cảnh
Quản lý mũ bảo hiểm
2.5 Biểu đồ luồng dữ liệu mức đỉnh:
Hình 2.3 – Biểu đồ luồng dữ liệu mức đỉnh
2.6 Biểu đồ luồng dữ liệu mức dưới đỉnh hoạt động thành viên:
Hình 2.4 – Biểu đồ luồng dữ liệu mức dưới đỉnh hoạt động thành viên
2.7 Biểu đồ luồng dữ liệu mức dưới đỉnh hoạt động quản trị:
Hình 2.5 – Biểu đồ luồng dữ liệu mức dưới đỉnh hoạt động quản trị
TRIỂN KHAI
3.1 Mô hình dữ liệu vật lý:
Hình 3.1 – Mô hình dữ liệu vật lý (bảng Diagram)
Hình 3.2 – Giao diện trang chủ
3.2.2 Giao diện Danh mục sản phẩm:
Hình 3.3 – Giao diện danh mục sản phẩm
KẾT LUẬN
Do hạn chế về thời gian, chương trình chưa hoàn thiện toàn bộ yêu cầu đề ra mặc dù đã được thực hiện với nỗ lực tối đa.
Thành thạo quy trình dịch vụ trực tuyến, ngôn ngữ lập trình ASP.NET, và hệ quản trị CSDL SQL Server Có kinh nghiệm thiết kế cơ sở dữ liệu cho hệ thống bán hàng online.
Tuy nhiên, do thời gian có hạn nên việc học công nghệ mới còn một số hạn chế:
- Chương trình còn đơn giản về chức năng
- Tính bảo mật chưa cao vì khi gặp lỗi thì sẽ báo cả đường link cơ sở dữ liệu, do đó dễ bị hacker
Chương trình hiện tại còn nhiều thiếu sót do thời gian, kinh nghiệm và kiến thức của nhóm phát triển còn hạn chế.
Chương trình hoàn thành, rất mong được các quý thầy cô và các bạn đóng góp ý kiến để xây dựng chương trình ngày một hoàn thiện
Cuối cùng em xin chân thành cảm ơn các thầy cô và các bạn đã giúp đỡ, tạo điều kiện cho em hoàn thành bài thi này
Em cũng xin chân thành cảm ơn thầy giáo Phương Văn Cảnh đã tận tình chỉ bảo, hướng dẫn em trong suốt quá trình làm đề tài