Server lưu trữ, cungcấp và xử lý dữ liệu rồi chuyển đến các máy trạm liên tục 24/7 để đáp ứngyêu cầu của client.- Các dịch vụ thường dùng trên Internet+ Tổ chức và khai thác thông tin tr
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
-🙙🕮🙛
-BÁO CÁO THỰC NGHIỆM
Học phần: Lập trình web bằng PHP
Đề tài : XÂY DỰNG WEBSITE BÁN NỘI THẤT Giáo viên hướng dẫn : ThS Phạm Thế Anh Nhóm – Lớp: 4 - 20231IT6022002
Sinh viên thực hiện :
Trang 2LỜI MỞ ĐẦU
Trong thời đại ngày nay, khi cuộc sống người tiêu dùng ngày càng hiện đại
và đa dạng, nhu cầu tìm kiếm và mua sắm trực tuyến đã trở thành một phần quantrọng của đời sống hàng ngày Nó không chỉ mang lại sự thuận tiện mà còn mở rakhông gian rộng lớn cho sự sáng tạo và đổi mới Trong bối cảnh đó, việc tạo ra mộttrải nghiệm mua sắm trực tuyến đầy đủ và đáp ứng mọi nhu cầu của khách hàng trởnên càng quan trọng hơn bao giờ hết
Chính vì vậy, chúng tôi tự hào giới thiệu đến quý khách hàng một khônggian trực tuyến độc đáo và đẳng cấp Đây không chỉ là một trang web bán nội thấtthông thường, mà là nơi kết nối giữa sự đẳng cấp và sự ấm cúng, giúp bạn biếnngôi nhà của mình thành một không gian sống hoàn hảo và đẳng cấp nhất
Chúng tôi cam kết mang đến cho khách hàng những trải nghiệm mua sắmđộc đáo, từ việc lựa chọn sản phẩm đến quá trình thanh toán, với sự đa dạng vềkiểu dáng, chất lượng và giá trị Đội ngũ chúng tôi không ngừng nỗ lực để cung cấpnhững sản phẩm nội thất chất lượng cao nhất, đồng thời duy trì một dịch vụ chămsóc khách hàng xuất sắc để đảm bảo sự hài lòng và tin tưởng từ phía quý kháchhàng
Trang 3CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Các khái niệm
1.1.1 Mô hình Client - Server
- Client : là máy khách, máy trạm – là nơi gửi yêu cầu đến server Nó tổ chứcgiao tiếp với người dùng, server và môi trường bên ngoài tại trạm làm việc
- Server : Máy phục vụ-máy chủ Chứa các chương trình Server, tài nguyên(tập tin, tài liệu ) dùng chung cho nhiều máy khách Server lưu trữ, cungcấp và xử lý dữ liệu rồi chuyển đến các máy trạm liên tục 24/7 để đáp ứngyêu cầu của client
- Các dịch vụ thường dùng trên Internet
+ Tổ chức và khai thác thông tin trên web (gọi tắt là Web)
+ Thư điện tử (viết tắt là Email)
+ Tìm kiếm thông tin trên Internet
Để truyền thông với những máy tính khác, mọi máy tính trên Internet phải hỗtrợ giao thức chung TCP/IP (Transmission Control Protocol/Internet Protocol- làgiao thức điều khiển truyền dữ liệu và giao thức Internet), là một giao thức đồng
bộ, cho truyền thông điệp từ nhiều nguồn và tới nhiều đích khác nhau Ví dụ có thểvừa lấy thư từ trong hộp thư, đồng thời vừa truy cập trang Web TCP đảm bảo tính
an toàn dữ liệu, IP là giao thức chi phối phương thức vận chuyển dữ liệu trênInternet
Trang 41.1.2 Web browser
Trình duyệt web là một ứng dụng phần mềm để truy cập thông tin trên WorldWide Web, mỗi trang web, ảnh và video được xác định bằng một URL riêng biệt,cho phép các trình duyệt truy xuất và hiển thị chúng trên thiết bị của người dùngmới Nhiệm vụ của Web là để tương tác với các máy chủ web hay còn gọi là webserver Khi người dùng nhập 1 địa chỉ website vào trình duyệt, trình duyệt sẽ gửiyêu cầu đến máy chủ (web server) Sau đó máy chủ sẽ phản hồi về gửi nội dungcho người dùng Lúc này, Web Browser sẽ hiển thị nội dung vừa nhận được dướidạng cấu trúc HTML Và ngược lại, khi người dùng tương tác với trang web thì dữliệu người dùng nhập vào sẽ được trình duyệt chuyển về máy chủ để phân tích Để
sử dụng dịch vụ WWW, Client cần có 1 chương trình duyệt Web, kết nối vàoInternet thông qua một ISP Các trình duyệt phổ biến hiện nay là: MicrosoftInternet Explorer, Mozilla Firefox và Google Chrome…
1.1.3 Web server
Webserver là một chiếc máy tính lớn được kết nối với tập hợp mạng máytính của người dùng và chạy các phần mềm được thiết kế Web server thường códung lượng lưu trữ lớn và tốc độ xử lý cao nhằm đảm bảo khả năng lưu trữ và vậnhành kho dữ liệu trên internet Web server hoạt động liên tục nhằm cung cấp dữliệu xuyên suốt cho mạng lưới máy tính mà nó kết nối Webserver hỗ trợ các côngnghệ khác nhau:
- IIS (Internet Information Service) : Hỗ trợ ASP, mở rộng hỗ trợ PHP
- Apache: Hỗ trợ PHP
- Tomcat: Hỗ trợ JSP (Java Servlet Page)
- Nginx : Hỗ trợ PHP
Trang 51.2 Yêu cầu sử dụng ngôn ngữ PHP
1.2.1 HTML + CSS + Bootstrap
- HTML (Hypertext Markup Language):
+ Là ngôn ngữ đánh dấu cơ bản được sử dụng để xây dựng cấu trúc củatrang web
+ Sử dụng các thẻ để định nghĩa các phần khác nhau của trang như tiêu
đề, đoạn văn bản, hình ảnh, liên kết, và nhiều thứ khác
- CSS (Cascading Style Sheets):
1.2.2 PHP
a, Khái niệm
PHP viết tắt Hypertext Preprocessor là một ngôn ngữ lập trình kịchbản “kịch bản” này rất đơn giản và nhanh, gọn, lẹ hiệu quả rất cao cũng như
Trang 6rất lớn và đây là ngôn ngữ chuyên về web Vì vậy khi nhắc đến web nhiềungười sẽ nghĩ ngay đến PHP Và một số thương hiệu lớn cũng như mạng xãhội facebook cũng sử dụng ngôn ngữ lập trình web PHP.Thực chất PHP làngôn ngữ kịch bản nhúng trong HTML, nói một cách đơn giản đó là mộttrang HTML có nhúng mã PHP, PHP có thể được đặt rải rác trong HTML
Hơn thế nữa, loại ngôn ngữ này còn khá dễ học và có thời gian xâydựng sản phẩm tương đối ngắn so với các ngôn ngữ khác Vì thế, PHP nhanhchóng trở thành ngôn ngữ lập trình web phổ biến và được ưa chuộng sử dụnghàng đầu thế giới
b, Tại sao nên sử dụng PHP
Hiện nay thiết kế web bằng ngôn ngữ lập trình PHP đang là xu hướngchính, chủ đạo trong giới thiết kế website Những công ty thiết kế websitelớn hoặc các dịch vụ freelancer thường chọn PHP để thiết kế web cho kháchhàng, vì khi thiết kế website xong khách hàng rất dễ sử dụng và quản trịtrang web Do website hiển thị đơn giản, bảng quản trị dễ nhìn, đọc qua mộtlần là biết cách quản trị trang web, quan trọng hơn cả độ bảo mật của nhữngwebsite ngôn ngữ lập trình PHP khá cao, chính vì thế mà nó được tin dùngbởi nhiều công ty lập trình, những cái tên có thể kể đến như Monmedia,Webmini, Inkulal đều sử dụng ngôn ngữ này để làm website
Ngôn ngữ lập trình PHP đơn giản và dễ sử dụng
Nhu cầu xây dựng web có sử dụng cơ sở dữ liệu là một nhu cầu tất yếu
và PHP cũng đáp ứng rất tốt nhu cầu này Với việc tích hợp sẵn nhiềuDatabase Client trong PHP đã làm cho ứng dụng PHP dễ dàng kết nối tới các
hệ cơ sở dữ liệu thông dụng
Trang 7Việc cài đặt và sử dụng PHP rất dễ dàng, miễn phí và tự do vì đây làmột mã nguồn mở (Open-source).Vì có tính ưu thế như vậy mà PHP đã đượccài đặt phổ biến trên các Web Server thông dụng hiện nay như Apache, IIS…PHP vừa dễ với người mới sử dụng vừa có thể đáp ứng mọi yêu cầu của cáclập trình viên chuyên nghiệp, mọi ý tưởng của các bạn PHP có thể đáp ứngmột cách xuất sắc
c, PHP hoạt động như thế nào ?
Vì PHP là ngôn ngữ của máy chủ nên mã lệnh của PHP sẽ tập trungtrên máy chủ để phục vụ các trang Web theo yêu cầu của người dùng thôngqua trình duyệt
Khi người dùng truy cập Website viết bằng PHP, máy chủ đọc mãlệnh PHP và xử lý chúng theo các hướng dẫn được mã hóa Mã lệnh PHPyêu cầu máy chủ gửi một dữ liệu thích hợp (mã lệnh HTML) đến trình duyệtWeb Trình duyệt xem nó như là một trang HTML tiêu chuẩn Như ta đã nói,PHP cũng chính là một trang HTML nhưng có nhúng mã PHP và có phần
mở rộng là HTML Phần mở của PHP được đặt trong thẻ mở <?php và thẻđóng ?> Khi trình duyệt truy cập vào một trang PHP, Server sẽ đọc nội dungfile PHP lên và lọc ra các đoạn mã PHP và thực thi các đoạn mã đó, lấy kếtquả nhận được của đoạn mã PHP thay thế vào chỗ ban đầu của chúng trongfile PHP, cuối cùng Server trả về kết quả cuối cùng là một trang nội dungHTML về cho trình duyệt
1.3 Cơ sở dữ liệu MySQL
MySQL là một hệ quản trị cơ sở dữ liệu (DBMS) quan hệ mã nguồn mở,phát triển và phân phối bởi Oracle Corporation Nó là một trong những hệ quản trị
Trang 8cơ sở dữ liệu phổ biến nhất trên thế giới và được sử dụng rộng rãi trong các ứngdụng web và doanh nghiệp.
Đặc điểm của MySQL
- MySQL là một phần của chuẩn mã nguồn mở, điều này có nghĩa làbạn có thể sử dụng, sửa đổi và phân phối nó miễn phí
- MySQL sử dụng ngôn ngữ truy vấn SQL để thực hiện các thao táctruy vấn và quản lý cơ sở dữ liệu
- MySQL có sẵn trên nhiều hệ điều hành như Windows, Linux, macOS,
- MySQL có thể hoạt động trên nhiều loại kiến trúc máy chủ khác nhau,
từ máy tính cá nhân đến các hệ thống máy chủ lớn
- Có một cộng đồng lớn và tích cực xung quanh MySQL, cung cấp hỗtrợ và tài nguyên đa dạng cho người dùng
Trang 9CHƯƠNG 2: PHÂN TÍCH CÁC CHỨC NĂNG CỦA WEBSITE 2.1 Các chức năng chính của website
Trang 10+ Thời gian bàn giao
- Làm thế nào anh(chị) duy trì
quản lý thu chi hàng ngày?
- Làm thế nào anh(chị) duy trì
thông tin về các sản phẩm nội
Trang 11- Mô tả các loại sản phẩm nội
thất chủ yếu hiện đang có trong
cửa hàng
- Khách hàng thực hiện thanh
toán và mua hàng như thế nào
trên trang web?
- Có các phương thức thanh toán
Trang 12Người hỏi : Nguyễn Đình Tăng Người trả lời : Nguyễn Thái Công
Câu 1 : Bình thường bạn thường quản
lý việc bán hàng thông qua cách nào?
Tôi thường quản lý bán hàng bằngword, excel hoặc đôi khi bằng giấy bút.Câu 2 : Hiện nay cửa hàng có bao nhiêu
loại mặt hàng, các loại mặt hàng bán
chạy nhất là gì?
Cửa hàng của chúng tôi hiện có 30 mặthàng Các loại mặt hàng bán chạy nhấtthường là rèm, bàn ghế; được xác địnhdựa trên theo dõi doanh số bán hàng vàphản hồi từ khách hàng
Câu 3 : Hiện nay cửa hàng thường sử
dụng cách nào để duy trì quản lý thu
chi hàng ngày và thống kê doanh số?
Thường là sử dụng word và excel đểthống kê doanh số, đôi khi sử dụng giấybút và điện thoại
Câu 4 : Bạn nghĩ sao về việc quảng bá
thương hiệu trên website?
Hiện nay website đang được sử dụngrộng rãi nên việc quảng bá thương hiệucũng như sản phẩm trên mạng đang rấthot và nhanh chóng
Câu 5 : Làm thế nào anh(chị) duy trì
thông tin về các sản phẩm nội thất?
Chúng tôi duy trì thông tin về các sảnphẩm nội thất bằng cách định kỳ cậpnhật trên trang web của mình Mỗi sảnphẩm được mô tả chi tiết với hình ảnhchất lượng và thông tin kỹ thuật để tạo
ra trải nghiệm mua sắm tốt nhất chokhách hàng
Trang 13Câu 6 : Mô tả quy trình thanh toán và
mua hàng bên mình?
Quy trình thanh toán và mua hàng trêntrang web của chúng tôi rất đơn giản.Khách hàng chọn sản phẩm, thêm vàogiỏ hàng và thực hiện thanh toán trựctuyến thông qua các phương thức thanhtoán an toàn mà chúng tôi hỗ trợ Sau
đó, chúng tôi xử lý đơn đặt hàng và bắtđầu quá trình giao hàng
Câu 7 : Theo bạn, rủi ro khi sử dụng
website bán hàng là gì?
Đôi khi nó sẽ khó sử dụng cho nhữngngười không am hiểu về công nghệ.Câu 8 : Bạn đề xuất kinh phí dự kiến
cho việc phát triển sản phẩm là bao
nhiêu?
Chúng tôi đề xuất một kinh phí dự kiến
là 50 triệu để đảm bảo chất lượng vàtính năng của sản phẩm Điều này baogồm cả phát triển, quảng bá và các chiphí khác liên quan
Câu 9 : Anh(chị) dự kiến thời gian bàn
giao cho dự án là bao lâu?
Chúng tôi dự kiến thời gian bàn giaocho dự án là 3 tháng Điều này giúpchúng tôi dự trù thời gian cần thiết đểkiểm thử và đảm bảo rằng sản phẩmhoạt động mượt mà trước khi triển khai.Câu 10 : Các điều khoản về bảo hành
và bảo trì như thế nào sau khi sản phẩm
được triển khai?
Chúng tôi sẽ thiết lập một chính sáchbảo hành và bảo trì chi tiết, bao gồmcác điều kiện và thời gian bảo hành.Điều này giúp chúng tôi đảm bảo sự hỗ
Trang 14trợ và duy trì sản phẩm trong thời giandài và đồng thời tạo niềm tin từ phíakhách hàng.
Đánh giá chung : Cửa hàng nội thất hiện đang áp dụng phương thức quản lýtruyền thống, nhưng đã nhận thức và thể hiện sự chuẩn bị cho việc chuyển đổisang mô hình trực tuyến Việc theo dõi doanh số bán hàng và phản hồi kháchhàng cùng với việc duy trì thông tin sản phẩm trên trang web là một bước quantrọng Tuy nhiên, để tối ưu hóa khả năng tiếp cận và chuyển đổi, cần xem xétchiến lược quảng bá và tích hợp các phương thức thanh toán trực tuyến Kế hoạchphát triển và ngân sách dự kiến đều có, nhưng có thể cần điều chỉnh để đáp ứngchi tiết và mục tiêu kinh doanh cụ thể hơn Đánh giá chung cho thấy sự nhận thức
và sẵn sàng phát triển của cửa hàng trước thách thức và cơ hội trong thị trườngtrực tuyến ngày càng cạnh tranh
+ Phương pháp điều tra
Phiếu điều tra về việc sử dụng website đối với cửa hàng
Câu 1: Sử dụng website quản lý bán
hàng online có phổ biến không?
A: Có phổ biếnB: Không phổ biến
Trang 15Câu 2: Sử dụng website quản lý bán
hàng có thực sự mang lại hiệu quả cho
nhà kinh doanh không?
A: CóB: Không
Câu 3: Cửa hàng cần bao nhiêu nhân
viên để duy trì hoạt động của website
A: 1B: 5C:10D: KhácCâu 4: Rủi ro trong việc bị đánh cắp
thông tin trên website có cao không?
A: CaoB: ThấpC: Trung BìnhD: Ý kiến khácCâu 5: Sử dụng website bán hàng có
đẩy mạnh được khả năng cạnh tranh
không?
A: Có đẩy mạnh được sự cạnh tranhB: Không thể đẩy mạnh được cạnhtranh
Câu 6: Khách hàng có thể tương tác với
bộ phận hỏi đáp CSKH trực tuyến
không?
A: CóB: Không
Câu 7: Doanh số của việc bán hàng qua
website chiếm bao nhiêu phần trăm?
A: 70%
B: 80%
C: 50%
D: KhácCâu 8: Khách hàng thường sử dụng
kiểu thanh toán nào khi mua hàng?
Trả lời: (câu hỏi mở)
Trang 16Câu 9: Khách hàng có đánh giá gì về
giao diện của website?
Trả lời: (câu hỏi mở)
Câu 10: Khoản đầu tư cho một website
là bao nhiêu?
Trả lời: (câu hỏi mở)
b, Khảo sát chi tiết
+ Hoạt động của hệ thống
- Người sử dụng có thể tạo tài khoản và đăng nhập trên hệ thống
và đăng xuất
- Người sử dụng có thể tìm kiếm sản phẩm, xem các sản phẩm
- Người sử dụng có thể thêm sản phẩm vào giỏ hàng và xem cácsản phẩm trong giỏ hàng của mình
- Người sử dụng có thể đặt hàng và xem tình trạng cũng như cácđơn đã đặt
- Người sử dụng có thể quản lý thông tin cá nhân
- Người quản trị có thể thống kê doanh thu, quản lý sản phẩm,quản lý yêu cầu, quản lý khách hàng
+ Yêu cầu chức năng
- Người dùng bình thường ( User )
Trang 17● Thêm, sửa, xóa sản phẩm trong giỏ hàng
Trang 18⇒ Khách hàng kế thừa thuộc tính từ người dùng bình thường (User ); Người quản trị ( Admin ) kế thừa thuộc tính từ người dùngbình thường ( User )
+ Yêu cầu phi chức năng
- Giao diện người dùng
+ Về ngôn ngữ hệ thống: Tiếng Việt+ Chạy trên đa hệ điều hành: MacOS, Window,…
● Xử lý thông tin chính xác Nếu xử lý không chínhxác ngay cả chỉ vài chi tiết nhỏ thôi cũng gây rathiệt hại cho khách hàng hoặc chủ, sẽ ảnh hưởngđến uy tín, chất lượng
2.1.2 Phân tích yêu cầu của Website
2.1.2.1 Yêu cầu giao diện Website
a) Giao diện người dùng
- Bố cục : sắp xếp bố cục rõ ràng, có hệ thống, phân bổ phù hợp
- Màu sắc : tương đồng với màu được thiết kế trong cửa hàng
Trang 19- Sản phẩm : hiển thị các sản phẩm theo danh mục, các sản phẩm bánchạy cũng như các sản phẩm mới sẽ được hiển thị đầu tiên khi mởtrình duyệt
- Thông tin : Các thông tin về cửa hàng như địa chỉ , số điện thoại,chứng chỉ , điều được hiển thị trên trang web công khai minh bạch
b) Giao diện quản trị viên
- Bố cục : phân ra các vùng làm việc riêng phù hợp với từng mục đích
- Thống kê được doanh số của cửa hàng, số lượng hàng đã bán và chưabán hết
2.1.2.2 Phân tích chức năng của Website
a) Chức năng đăng ký thành viên
- Input: Khách vãng lai phải nhập đầy đủ các thông tin (*: là thông tinbắt buộc)
+ Tên đăng nhập: (*)+ Địa chỉ: (*)
+ Mật khẩu: (*)+ Họ và tên: (*)+ Email: (*)+ Điện thoại: (*)
- Process: Kiểm tra thông tin nhập nếu thành công thì thông tin sẽ đượclưu vào CSDL
- Output: Đưa ra thông báo đăng ký thành công hoặc yêu cầu nhập lạinếu thông tin không hợp lệ
Trang 20- Description: Cho thành viên login vào hệ thống.
- Input: Người dùng nhập vào các thông tin về username, password đểđăng nhập
- Process: Kiểm tra username và password của người dùng nhập vào và
so sánh với username và password trong CSDL
- Output: nếu đúng sẽ đăng nhập được và hiển thị thông báo đăng nhậpthành công, ngược lại sẽ hiển thị thông báo “Email hoặc mật khẩukhông trùng khớp!”
c) Chức năng đăng xuất
- Description: Cho phép người dùng đăng xuất khỏi hệ thống khi khôngcòn nhu cầu sử dụng hệ thống
- Input: Người dùng click vào nút thoát trên hệ thống
- Process:Tiến hành xóa session lưu thông tin đăng nhập để dừng phiênlàm việc của tài khoản Member trong hệ thống
- Output: Quay trở lại trang chủ và ẩn đi chức năng đặt mua hàng
d) Chức năng tìm kiếm sản phẩm
- Input: Nhập vào hoặc lựa chọn thông tin tìm kiếm theo Danh mục,theo tên sản phẩm,…
- Process: Lấy thông tin sản phẩm từ CSDL theo các trường tìm kiếm
- Output: Hiện chi tiết thông tin sản phẩm dựa vào yêu cầu tìm kiếm
e) Chức năng xem chi tiết sản phẩm
- Description: Cho phép xem chi tiết mô tả của sản phẩm
- Input: Chọn sản phẩm cần xem
- Process: Lấy thông tin sản phẩm từ CSDL thông qua ID
Trang 21- Output: Hiện chi tiết thông tin sản phẩm.
f) Chức năng giỏ hàng
- Description: Cho phép xem chi tiết giỏ hàng
- Input: Click chọn vào giỏ hàng
- Process: Lấy thông tin sản phẩm từ CSDL thông qua ID ID này đượclấy từ biến session lưu các thông tin về mã sản phẩm và số lượng củatừng sản phẩm mà khách hàng chọn vào giỏ hàng
- Output: Hiển thị tên sản phẩm, ảnh, đơn giá, số lượng, thành tiền, tổngtiền của sản phẩm
- Process: Lưu thông về hóa đơn đặt hàng vào bảng trong cơ sở dữ liệu
- Output: Đưa ra thông báo đơn đặt hàng đã được đặt hàng thành công
và tình trạng hiện tại của đơn hàng
h) Chức năng thanh toán
- Description: Chức năng thanh toán cho phép khách hàng thanh toáncho đơn hàng đã đặt
Trang 22+ Thông tin đơn hàng: mã đơn hàng, số lượng sản phẩm, giá trịđơn hàng.
+ Thông tin thanh toán: phương thức thanh toán, số tiền thanhtoán
- Process:
+ Kiểm tra thông tin đơn hàng:
● Mã đơn hàng phải tồn tại
● Số lượng sản phẩm phải hợp lệ
● Giá trị đơn hàng phải hợp lệ
+ Kiểm tra thông tin thanh toán:
● Phương thức thanh toán phải hợp lệ
● Số tiền thanh toán phải lớn hơn hoặc bằng giá trị đơnhàng
+ Thực hiện thanh toán:
● Nếu thanh toán bằng thẻ ngân hàng:
○ Lấy thông tin thẻ ngân hàng của khách hàng
○ Xác thực thông tin thẻ ngân hàng
○ Chiết khấu số tiền thanh toán từ thẻ ngân hàng củakhách hàng
● Nếu thanh toán bằng tài khoản ngân hàng:
○ Lấy thông tin tài khoản ngân hàng của khách hàng
○ Xác thực thông tin tài khoản ngân hàng
○ Chuyển khoản số tiền thanh toán từ tài khoản ngânhàng của khách hàng
● Nếu thanh toán bằng tiền mặt:
○ Thu tiền mặt từ khách hàng
- Cập nhật trạng thái đơn hàng:
Trang 23+ Cập nhật trạng thái đơn hàng thành "Đã thanh toán".
i) Chức năng thay đổi thông tin
- Description: Cho phép thay đổi thông tin
- Input: Người dùng vào trang hồ sơ khách hàng và nhấn nút update đểthay đổi
- Process: Kiểm tra thông tin người dùng nhập vào Nếu đúng thì cậpnhật các thông tin mới, ngược lại thì không
- Output: Hiển thị thông báo thành công nếu thông tin nhập vào chínhxác hoặc hiển thị thông báo yêu cầu nhập lại nếu thông tin khôngchính xác
k) Chức năng quản lý sản phẩm
- Chức năng chỉnh sửa thông tin sản phẩm:
+ Description: Giúp Admin thay đổi thông tin của sản phẩm đã cótrong CSDL
+ Input: Admin nhập thông tin mới của sản phẩm
+ Process: Cập nhật thông tin mới cho sản phẩm
+ Output: Hiển thị thông báo đã cập nhật sản phẩm
- Chức năng xóa sản phẩm:
+ Description: Giúp Admin có thể xóa sản phẩm
+ Input: Chọn sản phẩm cần xoá
+ Process: Xoá trong CSDL
+ Output: Load lại danh sách sản phẩm
- Chức năng thêm sản phẩm:
+ Description: Giúp Admin có thể thêm sản phẩm mới
Trang 24+ Input: Admin nhập vào những thông tin cần thiết của sản phẩmmới.
+ Process: Kiểm tra xem những trường nào không được để trống.Nếu tất cả đều phù hợp thì thêm vào database Ngược lại thìkhông thêm vào database
+ Output: Load lại danh sách sản phẩm để xem sản phẩm mới đãđược thêm vào CSDL
l) Chức năng quản lý khách hàng
- Chức năng xem thông tin các đơn đặt hàng (đang chờ được xử lý, hoặc
đã xử lý thành công):
+ Description: Xem chi tiết đơn đặt hàng có trong CSDL
+ Input: Chọn tên hoá đơn của hoá đơn đó
+ Process: Lấy toàn bộ thông tin chi tiết của đơn đặt hàng có trongCSDL
+ Output: Hiển thị chi tiết thông tin trong đơn đặt hàng
Trang 25- Output: Các báo cáo thống kê dưới dạng bảng, biểu đồ,
2.1.3 Thiết kế hệ thống
a) Biểu đồ use case
Hình 2.1 Sơ đồ use case tổng quan
Trang 26Hình 2.2 Sơ đồ phân rã use case khách hàng chưa có tài khoản
Hình 2.3 Sơ đồ phân rã use case khách hàng có tài khoản
Trang 27Hình 2.4 Sơ đồ phân rã use case người quản trị
b) Mô tả use case
- Use case Đăng ký
Các tác nhân Khách hàng
Mô tả Cho phép đăng ký
Tiền điều kiện Không
Luồng sự kiện chính - Use Case bắt đầu khi người dùng nhấn vào
nút đăng ký Hệ thống sẽ hiển thị form đăng
ký tài khoản
Trang 28- Khi nhập xong thông tin và nhấn vào nút đăng
ký Hệ thống lưu thông tin khách hàng vàoCSDL Thông báo đăng thành công Use casekết thúc
Luồng rẽ nhánh - Khi không kết nối được CSDL tại bất kỳ thời
điểm nào Hệ thống thông báo lỗi Use casekết thúc
- Nếu để trống trường dữ liệu và nhấn nào nútđăng ký Hệ thống báo lỗi Người dùng có thểnhập tiếp hoặc thoát
- Khi nhấn vào nút ‘X’ ở góc trên form đăng
ký Hệ thống sẽ đóng form Use case kết thúc.Hậu điều kiện Nếu Use case thành công Hệ thống lưu thông tin
khách hàng vào CSDL Ngược lại báo lỗi
Bảng 2.1.1 Mô tả use case đăng ký
- Use case Đăng nhập
Các tác nhận Khách hàng, Người quản trị
Tiền điều kiện Không
Luồng sự kiện chính - Use Case bắt đầu khi người dùng nhấn vào
Trang 29nút đăng nhập Hệ thống sẽ hiển thị formđăng nhập.
- Khi nhập xong thông tin và nhấn vào nútđăng nhập Hệ thống kiểm tra thông tin vớiCSDL Đúng, lưu phiên đăng nhập, chuyểnhướng qua trang chủ Sai, thông báo sai tàikhoản hoặc mật khẩu Use case kết thúc.Luồng rẽ nhánh - Khi không kết nối được CSDL tại bất kỳ thời
điểm nào Hệ thống thông báo lỗi Use casekết thúc
- Nếu để trống trường dữ liệu và nhấn nào nútđăng nhập Hệ thống báo lỗi Người dùng cóthể nhập tiếp hoặc thoát
- Khi nhấn vào nút ‘X’ ở góc trên form đăngnhập Hệ thống sẽ đóng form Use case kếtthúc
Hậu điều kiện Không
Lưu ý Trang đăng nhập của Người dùng và Người quản trị
khác nhau
Bảng 2.1.2 Mô tả use case đăng nhập
Trang 30- Use case Thêm vào giỏ hàng
Các tác nhận Khách hàng
Mô tả Cho phép thêm sản phẩm vào giỏ hàng
Tiền điều kiện Không
Luồng sự kiện
chính
- Use Case bắt đầu khi người dùng nhấn vào nútthêm ở dưới sản phẩm Hệ thống sẽ hiển thịform chi tiết sản phẩm
- Khi chọn xong thông tin ở form chi tiết sảnphẩm và nhấn nút thêm vào giỏ hàng Hệthống sẽ thêm sản phẩm vào giỏ hàng Usecase kết thúc
Luồng rẽ nhánh - Khi không kết nối được CSDL tại bất kì thời
điểm nào Hệ thống thông báo lỗi Use casekết thúc
- Khi nhấn nút thêm vào giỏ hàng Hệ thốngkiểm tra nếu số lượng còn thì thông báo thànhcông Ngược lại thông báo thất bại Use casekết thúc
Hậu điều kiện Hệ thống lưu thông tin sản phẩm vào giỏ hàng
Bảng 2.1.3 Mô tả use case thêm vào giỏ hàng
- Use case Xem giỏ hàng
Trang 31Luồng rẽ nhánh Khi không kết nối được CSDL tại bất kỳ thời điểm
nào Hệ thống thông báo lỗi Use case kết thúc
Hậu điều kiện Không
Bảng 2.1.4 Mô tả use case xem giỏ hàng
Trang 32- Khi điền xong thông tin và nhấn đặt hàng Hệthống sẽ thông báo thành công Use case kếtthúc.
Luồng rẽ nhánh - Khi không kết nối được CSDL tại bất kỳ thời
điểm nào Hệ thống thông báo lỗi Use casekết thúc
- Khi không điền đủ thông tin và nhấn nút đặthàng Hệ thống sẽ thông báo chưa nhập đầy đủthông tin Người dùng có thể nhập tiếp hoặcthoát
- Khi nhấn vào nút ‘X’ ở góc trên form Đặthàng Hệ thống sẽ đóng form Use case kếtthúc
Hậu điều kiện Không
Bảng 2.1.5 Mô tả use case đặt hàng
- Use case Thống kê
Trang 33Luồng sự kiện
chính
Use case bắt đầu khi người dùng nhấn đăng nhậpthành công ở trang người quản trị hoặc khi ngườidùng nhấn vào nút trang chủ Hệ thống sẽ hiển trịthống kê Use case kết thúc
Luồng rẽ nhánh Khi không kết nối được CSDL tại bất kỳ thời điểm
nào Hệ thống thông báo lỗi Use case kết thúc
Hậu điều kiện Không
Bảng 2.1.6 Mô tả use case thống kê
- Use case Quản lý khách hàng
- Người quản trị có thể xóa, sửa thông tin cơbản của khách hàng
- Hệ thống cập nhật lại thay đổi Use case kết
Trang 34Luồng rẽ nhánh Khi không kết nối được CSDL tại bất kỳ thời điểm
nào Hệ thống thông báo lỗi Use case kết thúc
Hậu điều kiện Không
Bảng 2.1.7 Mô tả use case quản lý khách hàng
- Use case Quản lý sản phẩm
- Use case bắt đầu khi người dùng nhấn vào
‘quản lý sản phẩm’ Hệ thống sẽ hiển thị danhsách sản phẩm
- Người quản trị có thể xóa, sửa, thêm sảnphẩm
- Hệ thống cập nhật lại thay đổi Use case kếtthúc
Luồng rẽ nhánh Khi không kết nối được CSDL tại bất kỳ thời điểm
nào Hệ thống thông báo lỗi Use case kết thúc
Hậu điều kiện Không
Trang 35Bảng 2.1.8 Mô tả use case quản lý sản phẩm
c) Phân tích các use case
- Phân tích use case Bảo trì danh mục
+ Biểu đồ trình tự
Trang 36+ Biểu đồ phân tích
- Phân tích use case Quản lý giỏ hàng
Trang 37+ Biểu đồ trình tự
Trang 38- Phân tích use case Xem danh mục
+ Biểu đồ trình tự
+ Biểu đồ phân tích
Trang 39- Phân tích use case Đặt hàng
+ Biểu đồ trình tự
Trang 40+ Biểu đồ phân tích
- Phân tích use case Đăng ký tài khoản
+ Biểu đồ trình tự