Trong nền kinh tế hiện nay, với xu thế toàn cầu hoá nền kinh tế thế giới, mọi mặt của đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con người ngày càng tăng cả về số lượng và chất lượng. Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet. Thông qua các sản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thương mại điện tử. 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 CNTT của nước ta, cùng với nhu cầu sử dụng máy tính để trao đổi và cập nhật thông tin càng ngày tăng. Từ thực tế đó việc đưa thông tin đáp ứng nhu cầu của mọi người và hỗ trợ cho việc mua bán diễn ra một cách nhanh chóng, tiết kiệm đã trở nên vô cùng cấp thiết. Song song với việc bán hàng qua điện thoại thì bán hàng qua mạng cũng là một giải pháp tối ưu trong việc phân phối thông tin vào mục đích thương mại. Việc bạn có thể ở nhà mà đi đến cửa hàng này hoặc cửa hàng khác trong không gian ảo đã trở thành hiện thực. Với mong muốn tiếp cận và góp phần đẩy mạnh sự phổ biến của thương mại điện tử ở Việt Nam, em đã tìm hiểu và thiết kế website bán hoa tươi với nhiều điểm ưu việt hơn so với cách mua, bán hàng trực tiếp truyền thống: Khách hàng có thể mua bán các mặt hàng ở bất kỳ nơi đâu: Chỉ cần một thiết bị để truy cập internet là bạn có thể “tha hồ” mua bán trên mạng. Mua hàng online không bị giới hạn về thời gian: Các Website bán hàng giúp bạn “show” được hàng hoá tới khách hàng mở cửa 2424. Thiết kế Website bán hoa tươi giúp đo lường hiệu quả kinh doanh: Thống kê được một ngày để biết có bao nhiêu lượt truy cập vào Website, có bao nhiêu lượt đặt hàng và sản phẩm nào được quan tâm nhiều nhất. Để đáp ứng nhu cầu cũng như mong muốn của khách hàng, đồng thời cũng là con đường phát triển kinh doanh, em đã tìm hiểu và thiết kế website với đề tài: “XÂY DỰNG WEBSITE BÁN HOA TƯƠI”.
Mục tiêu của đề tài
- Nắm bắt được phương pháp làm việc kinh doanh, thương mại điện tử.
- Nhằm đáp ứng được nhu cầu mở rộng thị trường tiêu thụ hàng hóa.
- Thông tin trang web luôn được cập nhật mới và luôn đáp ứng được nhu cầu tìm kiếm thông tin của khách hàng Bên cạnh đó còn tiết kiệm được thời gian và chi phí đi lại cho khách hàng.
- Khảo sát phân tích thiết kế hệ thống.
- Tìm hiểu và xây dựng các chức năng cần thiết của trang web bán hoa tươi.
- Tìm hiểu và áp dụng ngôn ngữ PHP để xây dựng hệ thống.
Giới hạn và phạm vi của đề tài
- Các phương thức hoạt động, quy trình hoạt động kinh doanh, thương mại điện tử, cụ thể là website bán hoa tươi
- Phân tích, thiết kế và cài đặt các chức năng của website “Xây dựng website bán hoa tươi”.
Kết quả dự kiến đạt được
- Xây dựng thành công website có đầy đủ các chức năng cần thiết để hoạt động hiệu quả.
- Phần Front end : Giao diện trực quan, thân thiện với khách hàng
+ Có chức năng tìm kiếm sản phẩm, thuận tiện cho khách hàng.
+ Đặt hàng như thêm sửa xóa giỏ hàng và thanh toán.
+ Bình luận về sản phẩm
- Phần Back end : Thuận tiện cho người quản trị thao tác với các chức năng quản lý sản phẩm, đơn hàng, nhà cung cấp, các báo cáo thống kê liên quan đến đơn hàng.
KIẾN THỨC NỀN TẢNG
Cơ sở lý thuyết
UML là viết tắt của “Unifiled Modeling Language” – là ngôn ngữ mô hình hóa thống nhất, dùng để đặc tả, trực quan hóa và tư liệu hóa phần mềm hướng đối tượng.
UML là một ngôn ngữ mô hình hoá thống nhất có phần chính bao gồm những ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả các thiết kế của một hệ thống Nó là một ngôn ngữ để đặc tả, trực quan hoá, xây dựng và làm sưu liệu cho nhiều khía cạnh khác nhau của một hệ thống có nồng độ phần mềm cao
Các phần tử của UML:
View (Quan sát): Theo các phương diện khác nhau của hệ thống cần phân tích, thiết kế Dựa vào các quan sát để thiết lập kiến trúc cho hệ thống cần phát triển
Diagram (Biểu đồ): Đồ thị biểu diễn đồ họa về tập các phần tử trong mô hình và mối quan hệ của chúng Biểu đồ chứa đựng các nội dung của các quan sát dưới các góc độ khác nhau, một thành phần của hệ thống có thể xuất hiện trong một hay nhiều biểu đồ, có 9 loại biểu đồ khác nhau và được sử dụng kết hợp với nhau trong các trường hợp để cung cấp tất cả các hướng nhìn của một hệ thống
Model element (Các phần tử mô hình): Các khái niệm được sử dụng trong các biểu đồ được gọi là các phần tử mô hình, thể hiện các khái niệm hướng đối tượng quen thuộc Một phần tử mô hình thường được sử dụng trong nhiều biểu đồ khác nhau, nhưng nó luôn luôn có chỉ một ý nghĩa và một kí hiệu.
1.1.2 Trình bày về mô hình MVC [2]
MVC là viết tắt của “Model View Controller” là một kiến trúc phần mềm, được tạo ra với mục đích quản lý và xây dựng dự án phần mềm có hệ thống hơn.
Mô hình MVC được phân bố thành 3 phần mang tính chất độc lập và mỗi phần có một nhiệm vụ hoàn toàn khác nhau.
Model: là phần sẽ chứa tất cả các hàm, đối tượng mô tả dữ liệu như các Class, xuất database, … thành phần Controller sẽ thông qua các hàm, phương thức đó để lấy dữ liệu rồi gửi qua View, Model có nhiệm vụ thao tác với các cơ sở dữ liệu.
View: hay còn được gọi là thành phần giao diện, là phần có đảm nhiệm nhiệm vụ tiếp nhận dữ liệu từ Controller, tương tác với người dùng và hiển thị nội dung sang các đoạn mã HTML.
Controller: là thành phần giữ vài trò trung gian giữa phần Model và phần View Controller có nhiệm vụ nhận các yêu cầu từ khách hàng, sau đó có phương pháp xử lý các yêu cầu đó, load model thích hợp và gửi dữ liệu qua view tương ứng rồi gửi lại kết quả cho khách hàng.
1.1.3 Trình bày về PHP và Framework CodeIgniter [3][4] a Trình bày về PHP
PHP là viết tắt của “Personal Home Page”, đây là một ngôn ngữ lập trình sử dụng để viết ở máy chủ (Lập trình web) Hiện nay có rất nhiều ngôn ngữ có thể viết ở máy chủ như: C#, Java, Python và PHP chính là một trong những ngôn ngữ của nhóm này.
PHP có cú pháp đơn giản, tốc độ nhanh và nhỏ gọn, dễ học và thời gian để tiếp cận PHP ngắn hơn so với các ngôn ngữ lập trình khác nên hiện nay PHP có rất nhiều các CMS mã nguồn mở như: WordPress, OpenCart, NukeViet cùng với đó là các framework như: Laravel, Symfony, CodeIgniter, …nên nó rất đa dạng và đáp ứng được hầu hết các website thông thường như blog cá nhân cho đến website giới thiệu công ty và bán hàng. b Trình bày về Framework CodeIgniter
CodeIgniter là nền tảng ứng dụng web nguồn mở được viết bằng ngôn ngữ PHP bởi Rick Ellis Phiên bản đầu tiên được phát hành vào ngày 28/02/2006. Hiện tại CodeIgniter đang được phát triển bởi Expression Engine Development Team thuộc EllisLab, Inc.
- Những điểm nổi bật Được thiết kế theo mô hình MVC (Model-View-Controller): mô hình MVC giúp tách thành phần hiển thị giao diện (presentation) và xử lý (business logic) của một phần mềm thành các phần độc lập, từ đó giúp cho việc thiết kế web, xử lý và bảo trì mã nguồn dễ dàng, đồng thời tăng khả năng mở rộng của phần mềm CodeIgniter vận dụng mô hình này trong thiết kế, giúp tách biệt các tập tin giao diện với các tập tin xử lý dữ liệu, nâng cao khả năng xử lý và bảo trì.
+ Nhỏ gọn: gói cài đặt chỉ 404KB, kích thước CodeIgniter giúp giảm thiểu đáng kể không gian lưu trữ.
+ Tốc độ nhanh: CodeIgniter được đánh giá là PHP Framework có tốc độ nhanh nhất hiện nay Bằng cơ chế lưu nội dung vào bộ đệm (cache), kiểm tra bộ đệm trước khi tiến hành thực hiện yêu cầu, CodeIgniter giảm số lần truy cập và xử lý dữ liệu, từ đó tối ưu hoá tốc độ tải trang.
+ Miễn phí: CodeIgniter được phát hành dưới giấy phép Apache/BSD mở rộng, cho phép người dùng tự do thay đổi, phát triển và phân phối mã nguồn.
Cơ sở dữ liệu là một hệ thống các thông tin có cấu trúc, được lưu trữ trên các thiết bị lưu trữ nhằm thỏa mãn yêu cầu khai thác thông tin đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng chạy cùng một lúc với những mục đích khác nhau.
Công cụ sử dụng
StarUML là một mô hình nền tảng, là phần mềm hỗ trợ UML (Unified Modeling Language) Nó hỗ trợ các phương pháp tiếp cận MDA (Model Driven Architecture) bằng cách hỗ trợ các khái niệm hồ sơ UML
StarUML hỗ trợ phân tích và thiết kế hệ thống một điều mà bất cứ dự án nào đều cần có Ngoài ra dùng StarUML sẽ đảm bảo tối đa hóa năng suất và chất lượng của các dự án phần mềm của bạn Vì nó cho phép mô hình hóa nên sẽ không phụ thuộc vào người code, ngôn ngữ code hay nền tảng sử dụng Do mô hình hóa nên rất dễ đọc và dễ hiểu Ngoài ra, StarUML còn có khả năng tự sinh code từ những mô hình class.
Xampp là một ứng dụng phần mềm khá nổi tiếng và thường hay được các lập trình viên sử dụng để xây dựng và phát triển các dựa án website ngôn ngữ PHP Xampp được cài đặt và chạy trực tiếp trong môi trường Windows.
Xampp là một công cụ tích hợp đầy đủ các thành bao gồm:
Apache: Là một chương trình máy chủ, dùng để giao tiếp với các giao thức HTTP Apache chạy tốt trên mọi hệ điều hành.
MySql: Là hệ quản trị cơ sở dữ liệu, được dùng để lưu trữ thông tin của một website Mỗi website có thể sử dụng một hoặc nhiều cơ sở dữ liệu
PHP: Là ngôn ngữ kịch bản trên phía Server, dùng để xử lý các thao tác của người dùng Và làm việc trực tiếp với cơ sở dữ liệu (Database)
Visual Studio Code (VS Code hay VSC) là một trong những trình soạn thảo mã nguồn phổ biến nhất được sử dụng bởi các lập trình viên Nhanh, nhẹ, hỗ trợ đa nền tảng, nhiều tính năng và là mã nguồn mở chính là những ưu điểm vượt trội khiến VS Code ngày càng được ứng dụng rộng rãi.
Hỗ trợ chức năng debug, đi kèm với Git, có syntax highlighting, tự hoàn thành mã thông minh, snippets, và cải tiến mã nguồn Nhờ tính năng tùy chỉnh,Visual Studio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các tùy chọn khác.
KHẢO SÁT HỆ THỐNG
Tổng quan về đơn vị khảo sát
Đơn vị khảo sát: Bông Handy Địa chỉ: 49 Mỗ Lao - Hà Đông - Hà Nội Điện thoại: 0460278928
Website: https://www.facebook.com/bonghandy/
Bông Handy là thương hiệu bán lẻ trực thuộc Bông Floral Fancy - một thương hiệu hoa tươi thiết kế theo yêu cầu và hoa trang trí sự kiện ra đời từ năm
2015 Với mong muốn đem niềm đam mê với hoa của mình chia sẻ cùng đông đảo mọi người, các thành viên trong team Bông Floral Fancy đã cho ra mắt thương hiệu bán lẻ của Bông dưới tên gọi "Bông Handy".
Bông Handy – đúng như tên gọi mà chúng mình đã chọn – Những bó hoa trao tay Với hy vọng, mỗi sản phẩm của Bông sẽ là một niềm hạnh phúc trao tay, được thể hiện bằng những bông hoa xinh xắn đầy màu sắc, với một cảm giác riêng biệt về thiên nhiên đã trở thành thương hiệu của Bông từ lâu Bông Handy với tiêu chí đem hoa đến mọi nhà, sẽ cung cấp cho các bạn từ những bông hoa đã sơ chế cẩn thận, những sản phẩm hoa hoàn thiện đáp ứng những nhu cầu khác nhau của các bạn.
Các mẫu sản phẩm: cửa hàng có thể đáp ứng được mọi yêu cầu của khách hàng từ giá thấp đến cao, từ bông, bó, giỏ hoa đến các loại hoa với đủ màu sắc khác nhau.
Phương thức bán hàng: Bán lẻ, báo giá đúng cho khách hàng trước khi đến cửa hàng mua sản phẩm Khi đến cửa hàng, khách hàng có thể trải nghiệm nhiều loại sản phẩm khác nhau trước khi đưa ra quyết định cuối cùng.
Hình thức thanh toán: Khách hàng có thể thanh toán trực tiếp bằng tiền mặt hoặc chuyển khoản.
Các dịch vụ: Dịch vụ ưu đãi, quà tặng cho khách hàng khi mua sản phẩm tương ứng và dịch vụ ship hàng tận nơi.
Khảo sát
2.2.2 Phỏng vấn quản lý cửa hàng
Người được phỏng vấn: Chị Nguyễn Minh Anh
Nội dung phỏng vấn: Nghiệp vụ và mong muốn của quản lý
Câu hỏi Câu trả lời
1 Thời gian hoạt động của cửa hàng? 9h – 20h
2 Sản phẩm bán chạy nhất là gì? Các mẫu hoa bó
3 Nguồn thu chính của cửa hàng từ đâu? Từ cửa hàng bán trực tiếp
4 Quản lí khách hàng như thế nào? Hiện tại thì chưa có thẻ thành viên.
5 Cửa hàng có các chương trình khuyến mãi và quảng cáo như thế nào?
Hầu hết các khuyến mại và quảng cáo đều chạy trên mạng xã hội, ngoài ra là các banner treo tại cửa hàng Khách hàng sẽ được các mã giảm giá tùy vào chương trình của cửa hàng.
6 Giải quyết phản hồi khách hàng như thế nào?
Mọi khiếu nại và phản hồi thì khách hàng có thể thông qua các fanpage hoặc gọi hotline. Tùy các trường hợp để có những giải quyết khác nhau.
7 Quản lý đơn hàng theo hình thức nào?
Qua trang quản lý thì sẽ biết được sản phẩm bán ra và chỉ có thông tin cơ bản của khách hàng như tên, số điện thoại, địa chỉ ship nếu khách đặt trước Còn nếu mua trực tiếp thì chưa có thông tin.
8 Chi phí cho việc ship hàng tận nơi cho khách có lớn không? Không quá lớn, khoảng từ 20000-35000
9 Nhân viên cửa hàng gồm bao nhiêu người trong ca và quản lý họ như thế nào?
2-3 người /ca Sẽ chấm công vào máy quét vân tay, cuối tháng sẽ được tổng hợp
10 Có mong muốn gì với hệ thống sắp tới
+ Xây dựng một website đặt hàng trực tiếp thân thiện với người dùng tạo cảm giác thoải mái cho người dùng.
+ Có giao diện đẹp, bắt mắt thu hút được người tiêu dùng giúp tăng doanh thu cho siêu thị.
+ Tăng tính bảo mật cho hệ thống.
2.2.3 Phỏng vấn nhân viên cửa hàng
Nhân viên bán hàng: Chị Lê Lan Anh
Nội dung phỏng vấn: Nghiệp vụ và công việc của nhân viên bán hàng
Câu hỏi Câu trả lời
1 Cửa hàng bán những loại hoa gì?
Hoa đám cưới, đám tang, quà tặng và hoa trang trí trong nhà / nhà hàng, quán cafe, …
2 Độ tuổi khách thường xuyên tới cửa hàng như thế nào? Khách hàng từ 20-34 tuổi
3 Cửa hàng đang bán qua các kênh nào?
Ngoài bán tại cửa hàng thì còn bán fanpage Facebook, Instagram
4 Khách hàng thường thanh toán bằng loại hình gì?
Khách hàng có thể thanh toán trực tiếp bằng tiền mặt hoặc chuyển khoản.
5 Với khách hàng đặt hoa và giao hoa tận nơi thì hình thức như thế nào?
Nếu khách đặt qua page hoặc gọi điện trực tiếp thì nhân viên cửa hàng sẽ ship hoặc gọi ship để giao cho khách.
Với kết quả 200 người tham gia khảo sát với tỷ lệ 44% nam, 56% nữ trong độ tuổi chiếm lớn nhất là các bạn trẻ từ 20-34 tuổi thì đa phần đều chi tiêu với mỗi lần sử dụng sản phẩm 100.000đ-300.000đ Và kết quả khá khả quan với việc sẽ chấp nhận sử dụng website mới cho mặt hàng nghiên cứu.
Đánh giá hệ thống
+ Cung cấp cho khách hàng cái nhìn khách quan về sản phẩm, dễ dàng, nhận biết, cảm nhận, thậm chí là trải nghiệm sản phẩm.
+ Cơ sở vật chất tiện nghi và hiện đại.
+ Còn nhiều thủ tục rườm rà gây mất thời gian.
+ Còn nhiều bất cập trong quản lý hệ thống bằng tin học trong quản lý nội bộ và tương tác khách hàng.
+ Trang web đặt hàng trực tuyến còn chưa thân thiện với người dùng, khiến cho người dùng gặp một số khó khăn khi sử dụng.
+ Độ bảo mật chưa cao.
+ Tối ưu hóa các thủ tục rườm rà sao cho đơn giản nhất tránh mất thời gian không cần thiết.
+ Nhất quán các vấn đề trong quản lý hệ thống bằng tin học trong quản lý nội bộ và tương tác khách hàng giải quyết được các vấn đề bất cập của hệ thống cũ.
+ Xây dựng một website đặt hàng trực tiếp thân thiện với người dùng tạo cảm giác thoải mái cho người dùng.
+ Có giao diện đẹp, bắt mắt thu hút được người tiêu dùng giúp tăng doanh thu cho siêu thị.
+ Tăng tính bảo mật cho hệ thống.
+ Do giá nhân công của ngành công nghệ thông tin cao nên chi phí thiết kế một hệ thống mới sẽ tốn kém.
+ Thời hạn có thể phải kéo dài do trong quá trình thiết kế có thể xảy ra một số lỗi phát trình không lường trước Do đó cần thời gian để giải quyết.
Phát biểu bài toán
Từ việc khảo sát cửa hàng bán hoa tươi thực tế, nhận thấy còn nhiều bất cập và không tiện lợi. Để mở cửa hàng hoa cho riêng mình thì cần phải xây dựng một website, nhằm giới thiệu các sản phẩm của cửa hàng, để thu hút nhiều khách hàng hơn cũng như việc mua bán trở nên thuận tiện dễ dàng, đáp ứng mọi nhu cầu của khách hàng. Đối với khách hàng
Khách hàng vãng lai cũng như các khách hàng đã là thành viên có thể tìm kiếm thông tin về các sản phẩm, có thể tìm các loại sản phẩm bằng cách cung cấp thông tin về sản phẩm đó.
Sau khi tìm thấy sản phẩm, khách hàng có thể xem thông tin chi tiết về các thông tin của từng sản phẩm và có thể mua một hoặc nhiều sản phẩm.
Khi mua sản phẩm, khách hàng cần tuân thủ các hướng dẫn của cửa hàng (để lại thông tin, phương thức thanh toán, nếu đã có tài khoản thì không cần phải điền nhiều thông tin)
Ngoài ra khách hàng còn có thể liên hệ với cửa hàng qua tin nhắn trực tiếp hoăc thông qua các trang mạng xã hội như facebook, zalo, email Đối với người quản trị hay nhân viên
Liên hệ với một số chủ vườn cũng như cửa hàng cung cấp hoa tươi để đáp ứng tốt nhất yêu cầu khách hàng.
Tư vấn tận tình cho khách hàng, giới thiệu những dòng sản phẩm tốt nhất, phù hợp nhất với những yêu cầu mà khách hàng đề ra Hướng dẫn khách hàng chu đáo.
Nhập đầy đủ thông tin trước khi xuất hoá đơn cho khách hàng
Quản lý các danh mục sản phẩm có thể thêm các danh mục sản phẩm khi hàng nhập về và thêm vào hệ thống.
Quản lý sản phẩm khi danh mục được tạo và thêm các thuộc tính sản phẩm vào hệ thống.
Nắm rõ tình hình mua bán, doanh thu của cửa hàng Việc kiểm tra thống kê của người quản lý phải được thực hiện hằng ngày.
Ghi nhận và giải quyết các yêu cầu của khách hàng.
Dự kiến chức năng
Sau khi thu thập và phân tích yêu cầu của khách hàng, chúng em thấy được rằng một website bán hoa tươi cần có các chức năng cơ bản sau:
Chức năng đăng nhập: Cho phép người quản trị đăng nhập vào hệ thống, khi đăng nhập thành công người quản trị sẽ sử dụng được các chức năng của hệ thống.
Chức năng quản lý danh mục: Cho phép xem, thêm, cập nhật, xóa, tìm kiếm các thông tin về danh mục hoa.
Chức năng quản lý kiểu dáng: Cho phép xem, thêm, cập nhật, xóa, tìm kiếm kiểu dáng hoa.
Chức năng quản lý sản phẩm: Cho phép thêm, sửa xóa các thông tin về các mặt hàng hoa (tên hoa, hình ảnh, giá cả, nguồn gốc, ý nghĩa, nội dung chi tiết.
Tìm kiếm: Nhằm giúp cho người dùng có thể tìm kiếm các thông tin hoa, tìm kiếm tin tức …. Đặt mua sản phẩm: Khi khách hàng có nhu cầu sử dụng 1 bó hoa hay 1 sản phẩm hoa bất kì nào đó nhưng không đến trực tiếp shop hoa thì có thể đặt hàng trực tuyến bằng cách điền đấy đủ thông tin cúa khách hàng vào trang đặt hàng.
Liên hệ với khách hàng: Cho phép xem danh sách liên hệ của khách hàng gửi tới như thông tin khách hàng, nội dung liên hệ; cho phép xóa và trả lời lại những liên hệ của khách hàng.
Có giao diện đăng nhập và đăng kí tài khoản trên hệ thông cửa hàng. Hiển thị được các sản phẩm theo danh mục, kiểu dáng, theo giá.
Cho phép khách hàng tìm kiếm các sản phẩm, xem thông tin chi tiết của sản phẩm, xem được những sản phẩm mới nhất.
Cho phép khách hàng đặt mua sản phẩm.
Cho phép gửi liên hệ, thắc mắc để được cửa hàng giải đáp nhanh nhất có thể.
PHÂN TÍCH HỆ THỐNG
Tác nhân (Actor)
Người quản lý: Là người quản trị hệ thống.
Khách hàng: Là khách xem đã có tài khoản.
Khách xem: Là thành viên chưa có tài khoản.
Bảng 3 1 Tác nhân và các chức năng
- Liên hệ với cửa hàng
- Xem: Xem chi tiết sản phẩm, Xem các danh mục sản phẩm, Xem các kiểu dáng sản phẩm
- Liên hệ với cửa hàng
- Xem: Xem chi tiết sản phẩm, Xem các danh mục sản phẩm, Xem các kiểu dáng sản phẩm
- Quản lý danh mục và sản phẩm
- Thêm danh mục, sản phẩm
- Sửa danh mục, sản phẩm
- Xóa danh mục, sản phẩm
Biểu đồ UseCase
3.2.1 Biểu đồ Use Case tổng quát
Hình 3 1 Use case tổng quát
3.2.2 Biểu đồ Use Case chi tiết
3.2.2.1 Use Case Đăng nhập – Đăng xuất
Hình 3 2 Use Case Đăng nhập – Đăng xuất
Bảng 3 2 Đặc tả Use case Đăng nhập
Tác nhân Quản lý, khách hàng
Mục đích Đăng nhập hệ thống
Mô tả Người sử dụng đăng nhập vào hệ thống thông qua
Tiền điều kiện Đã có tài khoản
1 Người sử dụng chọn chức năng “Đăng nhập”
2 Hệ thống hiển thị form “Đăng nhập”
3 Người sử dụng nhập “Email” và “Password”, gửi thông tin đến hệ thống
4 Hệ thống kiểm tra Nếu đúng thì cho phép truy cập, và sử dụng Nếu sai hệ thống thông báo lỗi và yêu cầu người dùng nhập lại thông tin.
4.1 Nhập sai định dạng “Email” hoặc “Password”, yêu cầu nhập lại
4.2 Nhập thiếu thông tin Email hoặc Password, yêu cầu nhập đầy đủ
4.3 Bỏ trống thông tin Email, Password, yêu cầu nhập đầy đủ
4.4 Nhập sai Email, Password, đăng nhập thất bại
Bảng 3 3 Đặc tả Use case Đăng xuất.
Tác nhân Quản lý, khách hàng
Mục đích Đăng xuất hệ thống
Mô tả Người sử dụng thoát khỏi hệ thống
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Đăng xuất”
2 Hệ thống chuyển về “Trang chủ”
3.2.2.2 Use Case Đăng ký tài khoản
Hình 3 3 Use Case Đăng ký tài khoản
Bảng 3 4 Đặc tả Use case Đăng ký tài khoản
Tên UC Đăng kí tài khoản
Mục đích Đăng ký hệ thống
Mô tả Người dùng đăng ký làm thành viên của hệ thống
Tiền điều kiện Khách xem chưa có tài khoản hệ thống
1 Người sử dụng chọn chức năng “Đăng ký”.
2 Hệ thống hiển thị form “Đăng ký”.
3 Người sử dụng nhập thông tin vào form “Đăng ký tài khoản”
4 Hệ thống lưu thông tin khách hàng vào CSDL và chuyển sang form “Thông tin”.
5 Hệ thống lưu thông tin khách hàng và CSDL và chuyển sang trang “Sản phẩm”
3.1 Nhập sai định dạng Email, password, yêu càu nhập lại
3.2 Nhập thiếu thông tin: email, usename, password, confirm password, yêu câgu nhập đầy đủ
3.3 Nhập password và confirm password không trùng nhau, yêu càu nhập lại
3.4 Thông tin tài khoản đã tồn tại trong CSDL, thông báo tài khoản đã tồn tại
4.1 Nhập sai định dạng thông tin của form, yêu cầu nhập lại
4.2 Nhập thiếu thông tin form, yêu cầu nhập đầy đủ4.3 Bỏ trống thông tin, yêu cầu nhập đầy đủ
3.2.2.3 Use Case Quản lý danh mục
Hình 3 4 Use Case Quản lý danh mục
Bảng 3 5 Đăc tả Use case Thêm danh mục
Tên UC Them danh muc
Mục đích Thêm danh mục sản phẩm.
Mô tả Nhân viên thêm danh mục sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người quản lý chọn chức năng “Thêm danh mục sản phẩm”
2 Hệ thống hiển thị form “Thêm danh mục sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
4 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
4.1 Sai định dạng thông tin danh mục, yêu cầu nhập lại
4.2 Thông tin danh mục đã có trong CSDL, thông báo danh mục đã tồn tại
Bảng 3 6 Đăc tả Use case Sửa danh mục
Tên UC Sua danh muc
Mục đích Sửa danh mục sản phẩm.
Mô tả Nhân viên sửa danh mục sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người quản lý chọn chức năng “Sửa danh mục sản phẩm”
2 Hệ thống hiển thị form “Sửa danh mục sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
4 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
Luồng sự kiện phụ 4.1 Sai định dạng thông tin danh mục, yêu cầu nhập lại
4.2 Để trống thông tin danh mục, yêu cầu nhập đầy đủ
Bảng 3 7 Đăc tả Use case Xóa danh mục
Tên UC Xoa danh muc
Mục đích Xóa danh mục sản phẩm.
Mô tả Nhân viên xóa danh mục sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Xóa danh mục sản phẩm”
2 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và xóa Ngược lại, yêu cầu kiểm tra lại Luồng sự kiện phụ 2.1 Danh mục sản phẩm tồn tại sản phẩm thì không được xóa
3.2.2.4 Use Case Quản lý kiểu dáng
Hình 3 5 Use Case Quản lý kiểu dáng
Bảng 3 8 Đăc tả Use case Thêm kiểu dáng
Tên UC Them kiểu dáng
Mục đích Thêm kiểu dáng sản phẩm.
Mô tả Quản lý thêm kiểu dáng sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Thêm kiểu dáng sản phẩm”
2 Hệ thống hiển thị form “Thêm kiểu dáng sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
4 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
4.1 Sai định dạng thông tin kiểu dáng yêu cầu nhập lại
4.2 Thông tin kiểu dáng đã có trong CSDL, thông báo kiểu dáng đã tồn tại
Bảng 3 9 Đăc tả Use case Sửa kiểu dáng
Tên UC Sua danh muc
Mục đích Sửa kiểu dáng sản phẩm.
Mô tả Quản lý sửa kiểu dáng sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Sửa kiểu dáng sản phẩm”
2 Hệ thống hiển thị form “Sửa kiểu dáng sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
4 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
Luồng sự kiện phụ 4.1 Sai định dạng thông tin kiểu dáng yêu cầu nhập lại
4.2 Để trống thông tin kiểu dáng, yêu cầu nhập đầy đủ
Bảng 3 10 Đăc tả Use case Xóa kiểu dáng
Tên UC Xoa kieu dang
Mục đích Xóa kiểu dáng sản phẩm.
Mô tả Quản lý xoá kiểu dáng sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Xóa kiểu dáng sản phẩm”
2 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và xóa Ngược lại, yêu cầu kiểm tra lại Luồng sự kiện phụ 2.1 Kiểu dáng sản phẩm tồn tại sản phẩm thì không được xóa
3.2.2.5 Use Case Quản lý sản phẩm
Hình 3 6 Use Case Quản lý sản phẩm
Bảng 3 11 Đăc tả Use case Thêm sản phẩm
Tên UC Them san pham
Mục đích Thêm sản phẩm
Mô tả Nhân viên thêm sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Thêm sản phẩm”
2 Hệ thống hiển thị form “Thêm sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
1 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
4.1 Sai định dạng thông tin: số lượng, giá sản phẩm chứa chữ cái Yêu cầu nhập lại
4.2 Tên sản phẩm trùng với sản phẩm đã lưu trong CSDL, thông báo trùng lặp
4.3 Bỏ trống thông tin, yêu cầu nhập đầy đủ
Bảng 3 12 Đăc tả Use case Sửa sản phẩm
Tên UC Sua san pham
Mục đích Sửa thông tin sản phẩm
Mô tả Quản lý sửa thông tin sản phẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Sửa sản phẩm”
2 Hệ thống hiển thị form “Sửa sản phẩm”
3 Người sử dụng điền đầy đủ các thông tin
4 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và lưu vào CSDL Ngược lại, yêu cầu nhập lại thông tin
Luồng sự kiện phụ 4.1 Sai định dạng thông tin sản phẩm, yêu cầu nhập lại
4.2 Để trống thông tin sản phẩm, yêu cầu nhập đầy đủ
Bảng 3 13 Đăc tả Use case Xóa sản phẩm
Tên UC Xoa san pham
Mục đích Xóa sản phẩm
Mô tả Quản lý xóaphẩm
Tiền điều kiện Đã đăng nhập
1 Người sử dụng chọn chức năng “Xóa sản phẩm”
2 Hệ thống kiểm tra dữ liệu Nếu đúng thông báo thành công và xóa Ngược lại, yêu cầu kiểm tra lạiLuồng sự kiện phụ 2.1 Sản phẩm tồn tại sản phẩm thì không được xóa.
Hình 3 7 Use Case Tìm kiếm
Bảng 3 14 Đăc tả Use case Tìm kiếm sản phẩm
Tên UC Tim kiem san pham
Tác nhân Quản lí, khách hàng, khách xem
Mục đích Tìm kiếm sản phẩm
Mô tả Quản lý, người dùng tìm kiếm sản phẩm
1 Người sử dụng nhập từ khóa sản phẩm
2 Hệ thống kiểm tra thông tin và hiển thị danh sách sản phẩm
Luồng sự kiện phụ 2.1 Nhập sai tên sản phẩm, thông báo không có kết quả
3.2.2.7 Use Case Quản lý đơn hàng
Hình 3 8 Use Case Quản lý đơn hàng
Bảng 3 15 Đăc tả Use case Quản lý đơn hàng
Tên UC Quản lý đơn hàng
Mục đích Xem, xóa, in hoá đơn
Mô tả Quản lý đơn đơn hàng
Tiền điều kiện Đã đăng nhập
1 Actor chọn chức năng “Quản lí đơn hàng”.
2 Actor có thể chọn các tùy chọn: xem, xóa, in hoá đơn.
- Xem thông tin đơn hàng:
2 Hệ thống hiển thị thông tin đơn hàng
2 Hệ thống hiển thị thông báo xác nhận xoá Nếu đồng ý, thực hiện xoá và thông báo xoá thành công. Ngược lại quay trở về trang “Quản lý đơn hàng”
2 Hệ thống thực hiện xuất thông tin đơn hàng thành file excel
3.2.2.8 Use Case Quản lý giỏ hàng
Hình 3 9 Use Case Quản lý giỏ hàng
Bảng 3 16 Đăc tả Use case Quản lý giỏ hàng
Tên UC Quản lý giỏ hàng
Tác nhân Khách hàng, khách xem
Mục đích Xem, thêm, sửa số lượng, xoá sản phẩm trong giỏ hàng
Mô tả Quản lý giỏ hàng
Thêm sản phẩm vào giỏ hàng:
1 Từ trang chính hoặc trang “Chi tiết sản phẩm" Actor chọn “Thêm vào giỏ”.
2 Hệ thống sẽ thực hiện hiển thị sản phẩm trong giỏ hàng.
Xem sản phẩm trong giỏ hàng:
3 Từ trang chính, actor nhấn vào biểu tượng giỏ hàng.
4 Hệ thống thực hiện yêu cầu, hiển thị trang “Giỏ hàng”, hiển thị các sản phẩm có trong giỏ.
Sửa số lượng sản phẩm trong giỏ hàng:
5 Từ trang chính, actor nhấn vào biểu tượng giỏ hàng
6 Hệ thống thực hiện yêu cầu, hiển thị trang “Giỏ hàng”
7 Actor nhập thay đổi số lượng sản phẩm có trong giỏ và nhấn “Thay đổi”
8 Hệ thống thực hiện yêu cầu, cập nhật lại số lượng sản phẩm trong giỏ.
Xoá sản phẩm trong giỏ hàng:
1 Trong trang “Giỏ hàng”, actor nhấn “Xoá” sản phẩm muốn xoá
2 Hệ thống đưa ra thông báo, nếu chấp nhận thì thực hiện xoá sản phẩm, ngược lại thì giữ nguyên.
Luồng sự kiện phụ 7.1 Người dùng nhập số âm, thông báo số lượng phải lớn hơn 1.
Hình 3 10 Use Case Đặt hàng
Bảng 3 17 Đăc tả Use case Đặt hàng
Mục đích Đặt hàng thanh toán sản phẩm
Tiền điều kiện Đã đăng nhập
1 Tại giao diện “Giỏ hàng”, actor chọn “Đặt hàng”
2 Hệ thống thực hiện yêu cầu, hiển thị giao diện thanh toán.
3 Actor chọn hình thức thanh toán
4 Actor chọn địa chỉ vận chuyển theo địa chỉ đăng ký hoặc thay đối địa chỉ vận chuyển
5 Lưu vào database Luồng sự kiện phụ
4.1 Người dùng thay đổi địa chỉ vận chuyển không đúng định dạng: số điện thoại chứa chữ, tên thành phố chứa chữ số Yêu cầu nhập lại
Hình 3 11 Use Case Thống kê
Bảng 3 18 Đăc tả Use case Thống kê
Tiền điều kiện Đã đăng nhập
1 Hệ thống hiện thị form đăng nhập.
2 Actor nhập email và pass.
3 Hệ thống kiểm tra thông tin tài khoản.
4 Actor chọn chức năng “Thống kê”.
5 Actor có thể chọn các tùy chọn: thống kê số lượng sản phẩm, thông kê doanh thu.
Biểu đồ tuần tự
3.3.1 Biểu đồ tuần tự Đăng nhập
Hình 3 12 Biểu đồ tuần tự Đăng nhập
- Loop (1,5): Thực hiện nhập email và mật khẩu cho đến khi đúng định dạng và thông tin trong CSDL Thực hiện nhập tối thiểu 1 lần và tối đa 5 lần
- 5-Kiểm tra định dạng: Kiểm tra email đủ @ và không quá 23 kí tự, Kiểm tra mật khẩu ít nhất chứ 8 kí tự, kiểm tra có bỏ trống hay không.
- 9-Kiểm tra: Kiểm tra thông tin đăng nhập, tồn tại tài khoản đăng nhập (có thông tin trong CSDL), tài khoản đang đăng nhập chỉ ở trên một thiết bị
- Alt: Kiểm tra định dạng và thông tin, trả về kết quả tại nhánh đúng và sai
- Form dangnhap: Hiển thị giao diện đăng nhập
- ĐK dangnhap: Kiểm tra định dạng dữ liệu, xử lý yêu cầu
- Database: Kiểm tra, lưu giữ, truy xuất dữ liệu
Hình 3 13 Biểu đồ tuần tự Đăng xuất
- 5- Kiểm tra xác nhận yêu cầu đăng xuất
- Form_Dangxuat: Hiển thị giao diện đăng xuất
- DK_Dangxuat: Thực hiện yêu cầu đăng xuất
3.3.2 Biểu đồ tuần tự Đăng kí tài khoản
Hình 3 14 Biểu đồ tuần tự Đăng kí tài khoản
- 5-Kiểm tra định dạng: Kiểm tra thông tin email phải chứa @ và dài không quá
23 kí tự, kiểm tra có bỏ trống hay không.
- 7-Kiểm tra tài khoản: Kiểm tra tài khoản đã có dữ liệu được lưu chưa (tồn tại tài khoản)
- Alt: Trả về kết quả theo nhánh đúng hoặc sai
3.3.3 Biểu đồ tuần tự Quản lý danh mục
Hình 3 15 Biểu đồ tuần tự Thêm Danh Mục
Hình 3 16 Biểu đồ tuần tự Sửa Danh Mục
- 5- Kiểm tra: Kiểm tra dữ liệu danh mục
Hình 3 17 Biểu đồ tuần tự Xóa Danh Mục
3.3.4 Biểu đồ tuần tự Quản lý kiểu dáng
Hình 3 18 Biểu đồ tuần tự Thêm kiểu dáng
Hình 3 19 Biểu đồ tuần tự Sửa kiểu dáng
5- Kiểm tra: Kiểm tra, tìm kiếm dữ liệu kiểu dáng
Hình 3 20 Biểu đồ tuần tự Xóa kiểu dáng
3.3.5 Biểu đồ tuần tự Quản lý sản phẩm
Hình 3 21 Biểu đồ tuần tự Thêm Sản Phẩm
Hình 3 22 Biểu đồ tuần tự Sửa Sản Phẩm
- 5-Kiểm tra: Kiểm tra, truy xuất dữ liệu sản phẩm
Hình 3 23 Biểu đồ tuần tự Xóa Sản Phẩm
- 6-Kiểm tra: Kiểm tra, truy xuất dữ liệu sản phẩm
3.3.6 Biểu đồ tuần tự Thống kê
Hình 3 24 Biểu đồ tuần tự Thống kê
- Par: Thực hiện yêu cầu dữ liệu không theo thứ tự, có thể thực hiện yêu cầu dữ liệu bất kì của sản phẩm hoặc doanh thu mà không cần xét đến thứ tự thực hiện.
- Critical: Luôn luôn thực hiện truy vấn thông tin doanh thu và trả về kết quả theo doanh thu theo thứ tự.
3.3.7 Biểu đồ tuần tự Tìm kiếm
Hình 3 25 Biểu đồ tuần tự Tìm kiếm
- 8-Kiểm tra: So sánh với dữ liệu trên CSDL
- Alt: Trả về kết quả theo trường hợp có kết quả tìm kiếm hoặc không
3.3.8 Biểu đồ tuần tự Quản lý đơn hàng
Hình 3 26 Biểu đồ tuần tự Xóa đơn hàng
3.3.9 Biểu đồ tuần tự Quản lý giỏ hàng
Hình 3 27 Biểu đồ tuần tự Thêm sản phẩm
Hình 3 28 Biểu đồ tuần tự Xóa sản phẩm trong giỏ hàng
3.3.10 Biểu đồ tuần tự Đặt hàng
Hình 3 29 Biểu đồ tuần tự Đặt hàng
- 5-Kiểm tra số lượng: Kiểm tra xem sản phẩm còn hàng trong kho hay không
3.3.11 Biểu đồ tuần tự Bình luận phản hồi
Hình 3 30 Biểu đồ tuần tự Bình luận, phản hồi.
Biểu đồ hoạt động
3.4.1 Biểu đồ hoạt động Đăng nhập
Hình 3 31 Biểu đồ hoạt động Đăng nhập
Hình 3 32 Biểu đồ hoạt động Đăng xuất
3.4.2 Biểu đồ hoạt động Đăng kí tài khoản
Hình 3 33 Biểu đồ hoạt động Đăng kí tài khoản
3.4.3 Biểu đồ hoạt động Quản lý danh mục
Hình 3 34 Biểu đồ hoạt động Thêm Danh Mục
Hình 3 35 Biểu đồ hoạt động Sửa Danh Mục
Hình 3 36 Biểu đồ hoạt động Xóa Danh Mục
3.4.4 Biểu đồ hoạt động Quản lý kiểu dáng
Hình 3 37 Biểu đồ hoạt động Thêm Kiểu Dáng
Hình 3 38 Biểu đồ hoạt động Sửa Kiểu Dáng
Hình 3 39 Biểu đồ hoạt động Xóa Kiểu Dáng
3.4.5 Biểu đồ hoạt động Quản lý sản phẩm
Hình 3 40 Biểu đồ hoạt động Thêm Sản Phẩm
Hình 3 41 Biểu đồ hoạt động Sửa Sản Phẩm
Hình 3 42 Biểu đồ hoạt động Xóa Sản Phẩm
3.4.6 Biểu đồ hoạt động Tìm kiếm
Hình 3 43 Biểu đồ hoạt động Tìm kiếm
3.4.7 Biểu đồ hoạt động Quản lý đơn hàng
Hình 3 44 Biểu đồ hoạt động Quản lý đơn hàng
3.4.8 Biểu đồ hoạt động Quản lý giỏ hàng
Hình 3 45 Biểu đồ hoạt động Thêm sản phẩm
Hình 3 46 Biểu đồ hoạt động Xóa sản phẩm trong giỏ hàng
3.4.9 Biểu đồ hoạt động Đặt hàng
Hình 3 47 Biểu đồ hoạt động Đặt hàng
3.4.10 Biểu đồ hoạt động Bình luận phản hồi
Hình 3 48 Biểu đồ hoạt động Đặt hàng.
Biểu đồ trạng thái
3.5.1 Biểu đồ trạng thái đơn hàng
Hình 3 49 Biểu đồ trạng thái đơn hàng.
Biểu đồ lớp
Mô hình cơ sở dữ liệu
Bảng User: Thông tin tài khoản của người quản lý
Tên trường Kiểu Độ rộng Giải thích user_id int 11 Khóa chính name nvarcha r
255 Tên người quản trị email varchar 255 Tài khoản quản trị password varchar 50 Mật khẩu role int 11 Mã nhóm người quản trị status int 11 Trạng thái
Bảng Contact: Thông tin, lời nhắn của khách hàng
Tên trường Kiểu Độ rộng Giải thích contact_id int 11 Khóa chính name varchar 25 Tên khách hàng email varchar 32 Email khách hàng subject varchar 255 Tiêu đề mesager text Lời nhắn status int 3 Trạng thái date date Thời gian
Bảng Customer: Thông tin khách hàng
Tên trường Kiểu Độ rộng Giải thích cus_id int 11 Mã khách hàng name varchar 255 Tên khách hàng email varchar 255 Email khách hàng password varchar 50 Mật khẩu mobile varchar 15 Số điện thoại khách hàng address nvarcha r
Bảng Comment: Thông tin bình luận của khách hàng
Tên trường Kiểu Độ rộng Giải thích comment_id Integer 11 Khóa chính pro_id Integer 11 Mã sản phẩm content Longtext 11 Nội dung bình luận createDate Datetime 11 Ngày tháng bình luận author Varchar 150 Tên khách hàng email Varchar 150 Email khách hàng phone Varchar 15 Số điện thoại khách hàng
Bảng Category: Thông tin danh mục sản phẩm
Tên trường Kiểu Độ rộng Giải thích category_id int 11 Mã danh mục sản phẩm name nvarcha r
255 Tên danh mục sản phẩm status int 11 Trạng thái danh mục sản phẩm
Bảng Brand: Thông tin kiểu dáng sản phẩm
Tên trường Kiểu Độ rộng Giải thích brand_id int 11 Mã loại sản phẩm name nvarcha r
Bảng Product: Thông tin sản phẩm
Tên trường Kiểu Độ rộng Giải thích pro_id int 11 Khóa chính,Mã sản phẩm name nvarchar 255 Tên sản phẩm description nvarchar 1000 Thẻ mô tả category_id int 11 Mã danh mục brand_id int 11 Mã loại sản phẩm price money Giá sản phẩm quantity int 11 Số lượng sản phẩm status int 11 Trạng thái sản phẩm image varchar 1000 Ảnh sản phẩm availability int 11 Sản phẩm nổi bật top int 11 Sản phẩm mới nhất
Bảng Order: Thông tin đặt hàng
Tên trường Kiểu Độ rộng Giải thích order_ id int 11 Mã hóa đơn đặt hàng cus_id int 11 Mã khách hàng shipping_id int 11 Mã giao hàng payment_id int 11 Mã đơn thanh toán total money Tổng tiền thanh toán date date Thời gian
Bảng Order_detail: Thông tin chi tiết đặt hàng
Tên trường Kiểu Độ rộng
Giải thích id_order_detail s int 11 Mã đơn đặt hàng order_id int 11 Mã hóa đơn đặt hàng pro_id int 11 Mã sản phẩm name nvarchar 255 Tên sản phẩm price money Giá tiền sản phẩm quantily int 11 Số lượng salse
Bảng Payment: Thông tin thanh toán
Tên trường Kiểu Độ rộng Giải thích payment_id int 11 Khóa chính status int 11 Trạng thái thanh toán type varchar 255 Loại thanh toán date date Thời gian thanh toán messager varchar 255 Tin nhắn
Bảng Shipping: Thông tin giao hàng
Tên trường Kiểu Độ rộng
Giải thích shipping_id Integer 11 Khóa chính, mã đơn giao hàng cus_id int 20 Mã khách hàng name nvarcha r
255 Tên khách hàng email varchar 255 Email khách hàng password varchar 50 Mật khẩu mobile varchar 15 Số điện thoại khách hàng address nvarcha r
THIẾT KẾ HỆ THỐNG
Thiết kế tổng thể
Hình 4 1 Biểu đồ thành phần
Hình 4 2 Biểu đồ triển khai
Thiết kế chi tiết
4.2.1.1 Giao diện dành cho người mua hàng
Hình 4 3 Giao diện trang chủ của website
Bảng 4 1 Thành phần giao diện trang chủ
Thành phần Mô tả thành phần Ràng buộc
Header Top Số điện thoại, Gmail của shop
Logo Logo chữ Flower Shop màu hồng và có mấy bông hoa
Có thể không hợp với ý khách hàng, hoặc trùng lặp ý tưởng bản quyền với shop khác.
Navigation menu Gồm: Trang chủ, shop và
Textbox Tìm kiếm sản phẩm Phải có dữ liệu cần tìm kiếm
Sidebar left Khách hàng có thể lựa chọn sản phẩm theo: Kiểu dáng, danh mục, giá
Khách hàng không yêu cầu phần lựa chọn sản phẩm theo: Kiểu dáng, danh mục, giá Vì vậy có thể sẽ không hài long với khách hàng
Featured items Thông tin sản phẩm gồm ảnh và giá Ảnh có thể dính bản quyền nếu không phải ảnh tự chup
Sản phẩm nổi bật Phải là sản phẩm bán chạy, bán nhiều
Giao diện chi tiết sản phẩm
Hình 4 4 Giao diện chi tiết sản phẩm
Bảng 4 2 Thành phần giao diện chi tiết sản phẩm
Thành phần Mô tả thành phần Ràng buộc
Sidebar left Khách hàng có thể lựa chọn sản phẩm theo: Kiểu dáng, danh mục, giá
Khách hàng không yêu cầu phần lựa chọn sản phẩm theo: Kiểu dáng, danh mục, giá Vì vậy có thể sẽ không hài long với khách hàng
Img Ảnh sản phẩm Ảnh có thể dính bản quyền nếu không phải ảnh tự chụp
Bình luận của khách hàng Chứa 50 ký tự trở lên
Product Thông tin sản phẩm gồm: - Tên sản phẩm và mã sản information Mã sản phẩm; Tên sản phẩm; Giá sản phẩm; Số lượng; Kiểu dáng sản phẩm phẩm không được trùng lặp
- Số lượng không được quá số lượng trong kho
Button Add cart Thêm sản phẩm vào giỏ hàng
Phải chọn sản phẩm còn số lượng thì mới thêm được vào giỏ hàng
Giao diện đăng nhập, đăng ký
Hình 4 5 Giao diện đăng nhập, đăng ký của khách hàng
Bảng 4 3 Thành phần giao diện đăng nhập, đăng ký
Thành phần Mô tả thành phần Ràng buộc
Textbox Địa chỉ email Nhập địa chỉ email tài khoản
- Email phải chứa ký tự @ , độ dài không quá 23 ký tự
- Phải nhập đúng gmail đã đăng ký
Nhập mật khẩu tài khoản - Mật khẩu phải có ít nhất 8 kí tự
- Phải nhật đúng mật khẩu đã đăng ký
Checkbox Giữ đăng nhập Giữ đăng nhập của bạn Không được để trống gmail và mật khẩu
Button Đăng nhập Đăng nhập
- Là tài khoản đã đăng ký
- Chỉ được đăng nhập ở một nơi
- Không được để trống gamil và mật khẩu
Nhập tên để đăng kí tài khoản Không có
Textbox Địa chỉ email Nhập địa chỉ email đăng ký
Email phải chứa kí tự @, độ dài không quá 23 ký tự Không được để trống gmail
Textbox Mật khẩu Nhập mật khẩu đăng ký
Mật khẩu phải có ít nhất 8 kí tự
Không được để trống mật khẩu
Textbox Nhập lại mật khẩu Nhập lại mật khẩu đăng ký Phải giống với mật khẩu đã đặt
Button Đăng ký Đăng ký tài khoản người dùng
Không được để trống Tên đăng nhập, email, mật khẩu và nhập lại mật khẩu
Hình 4 6 Giao diện giỏ hàng
Bảng 4 4 Thành phần giao diện giỏ hàng
Thành phần Mô tả thành phần Ràng buộc
Img Ảnh sản phẩm Ảnh có thể dính bản quyền nếu không phải ảnh tự chụp
Tên Tên sản phẩm Không được trùng với tên sản phẩm đã có sẵn
Giá Giá bán của sản phẩm Không có
Số lượng Số lượng của sản phẩm trong giỏ hàng
Không được vượt quá số lượng hàng trong kho
Tổng đơn hàng Tổng tiền của sản phẩm theo số lượng và giá
Khách hàng phải chọn sản phẩm và thêm vào giỏ hàng không vượt quá số lượng hàng trong kho
Phiếu giảm giá của cửa hàng
Phải có phiếu giảm giá
Phiếu quà tặng của cửa hàng đã cung cấp
Phải có phiếu quà tặng
Tổng giỏ hàng Tổng tiền của tất cả sản phẩm có trong giỏ hàng
Phải có sản phẩm ở trong giỏ hàng
VAT Thuế giá trị gia tăng Dựa trên quy định của nhà nước
Phí giao hàng Phí vận chuyển sản phẩm Không vận chuyển hàng đi các tỉnh xa
Tổng thanh toán Tổng tiền sau khi tổng tất cả thuế và phí
Phải chọn địa điểm vận chuyển
Button Xoá Xoá sản phẩm trong giỏ hàng
Có sản phẩm trong giỏ
Button Tiếp tục Lưu thông tin lựa chọn và tiếp tục thanh toán
Có phiếu giảm giá hoặc phiếu quà tặng
Button Thay đổi Thay đổi sản phẩm, số lượng sản phẩm trong giỏ hàng
Button Thanh toán Lưu thông tin giỏ hàng và chuyển sang giao diện thanh toán
Khách hàng phải nhập đầy đủ thông tin địa chỉ, lựa chọn sản phẩm mình cần mua
Hình 4 7 Giao diện thanh toán
Bảng 4 5 Thành phần giao diện thanh toán
Thành phần Mô tả thành phần Ràng buộc
Textbox Name Nhập tên khách hàng Không có
Textbox Email* Nhập email khách hàng Email phải chứa kí tự @, độ dài không quá 23 ký tự Không được để trống email
Nhập số điện thoại khách hàng Phải nhập đúng định dạng số
Address* Nhập địa chỉ khách hàng Phải nhập đúng nơi ở của khách hàng
Textbox City Nhập tỉnh, thành phố giao hàng của khách hàng
Phải nhập đúng thành phố của khách hàng đang ở
Textbox Country Nhập quốc gia khách hàng Phải nhập đúng quốc gia của khách hàng
Checkbox Vận chuyển theo địa chỉ thanh toán
Khách hàng có thể chọn vận chuyển theo địa chỉ thanh toán
Button Lưu và tiếp tục
Lưu thông tin khách hàng và tiếp tục
Khách hàng phải điền đầy đủ thông tin của khách hàng
4.2.1.2 Giao diện dành cho người quản trị
Hình 4 8 Giao diện đăng nhập của admin.
Bảng 4 6 Thành phần giao diện admin
Thành phần Mô tả thành phần Ràng buộc
Nhập địa chỉ email tài khoản
- Email phải chứa ký tự @, độ dài không quá 23 ký tự
- Phải nhập đúng gmail đã đăng ký
Textbox Mật khẩu Nhập mật khẩu tài khoản
- Mật khẩu phải có ít nhất 8 kí tự
- Phải nhật đúng mật khẩu đã đăng ký
Checkbox Giữ đăng nhập Giữ đăng nhập của bạn Không được để trống gmail và mật khẩu
Button Đăng nhập Đăng nhập - Là tài khoản đã đăng ký
- Chỉ được đăng nhập ở một nơi
- Không được để trống gamil và mật khẩu
Hình 4 9 Giao diện tranng chính
Giao diện quản lý sản phẩm
Hình 4 10 Giao diện danh sách sản phẩm
Hình 4 11 Giao diện thêm sản phẩm
Bảng 4 7 Thành phần giao diện thêm sản phẩm
Thành phần Mô tả thành phần Ràng buộc
Textbox Tên sản phẩm Nhập tên sản phẩm Không có
Textox Mô tả sản phẩm Nhập mô tả sản phẩm Chứa 50 ký tự trở lên
Select Danh mục Chọn danh mục Phải chọn danh mục đã có sẵn
Select Danh mục phụ Chọn danh mục phụ Phải chọn danh mục phụ đã có sẵn Select Kiểu dáng Chọn kiểu dáng Phải chọn kiểu dáng đã có sẵn
Textbox Giá sản phẩm Thêm giá sản phẩm Phải nhập đúng định dạng số
Textbox Số lượng sản phẩm
Thêm số lượng sản phẩm Phải nhập đúng định dạng số
Select Trạng thái Chọn trạng thái Chọn trạng thái đã có sẵn Select Khả dụng Chọn khả dụng Chọn khả dụng đã có sẵn
Label Upload Ảnh Chọn tệp ảnh sản phẩm
Không được thêm nhiều ảnh Ảnh có thể dính bản quyền nếu không phải ảnh tự chụp
Button Lưu Thêm sản phẩm mới
Nếu không có dữ liệu được nhập thì không thêm sản phẩm được
Giao diện Quản lý kiểu dáng
Hình 4 12 Giao diện danh sách kiểu dáng
Giao diện Quản lý đơn hàng
Hình 4 13 Giao diện quản lý đơn hàng.
XÂY DỰNG CÀI ĐẶT CHƯƠNG TRÌNH
Xây dựng cơ sở dữ liệu
Hình 5 1 Mô hình cơ sở dữ liệu vật lý
Bảng 5 8 CSDL chi tiết đơn hàng
Lưu đồ thuật toán
Hình 5 2 Lưu đồ thuật toán đăng ký
Khi khách hàng muốn mua hàng trên hệ thống thì sẽ phải đăng kí tài khoản trên hệ thống Khách hàng sẽ chọn đăng kí và nhập các thông tin cần thiết mà giao diện yêu cầu nhập Sau khi xác nhận thì hệ thống kiểm tra thông tin:Nếu hợp lệ sẽ lưu CSDL, ngược lại nếu xảy ra lỗi sẽ thông báo thất bại và cho phép nhập lại.
Hình 5 3 Lưu đồ thuật toán đăng nhập
Khi khách hàng muốn mua hàng trên hệ thống thì sẽ phải đăng nhập tài khoản đã đăng kí trên hệ thống Khách hàng sẽ chọn đăng nhập và nhập tên tài khoản và mật khẩu Sau khi xác nhận thì hệ thống kiểm tra thông tin: Nếu tồn tại sẽ đăng nhập tài khoản khách hàng, ngược lại nếu xảy ra lỗi sẽ thông báo thất bại và cho phép nhập lại.
Hình 5 4 Lưu đồ thuật toán thêm sản phẩm
Khi muốn thêm sản phẩm lên bán thì admin hệ thống (Nhân viên hay quản lý) và chức năng thêm sản phẩm sau đó nhập các thông tin về sản phẩm và xác nhận lưu Sau khi xác nhận thì hệ thống kiểm tra thông tin: Nếu hợp lệ sẽ lưu CSDL, ngược lại nếu xảy ra lỗi sẽ thông báo thất bại và cho phép nhập lại.
Hình 5 5 Lưu đồ thuật toán thêm sản phẩm vào giỏ hàng
Khách hàng xem sản phẩm trên web và muốn mua hàng thì có thể thêm sản phẩm vào giỏ hàng Khách hàng vào giỏ hàng và chọn lại sản phẩm muốn mua và ấn thanh toán Hệ thống kiểm tra thông tin số lượng và dẫn đến trang điền thông tin giao hàng (nếu không đủ tồn sẽ thông báo hiển thị lên màn hình). Khách hàng nhập thông tin theo hệ thống yêu cầu và xác nhận Hệ thống kiểm tra: Thông báo đặt thành công nếu KH xác nhận Trở về giao diện giỏ hàng nếu
KH hủy không đặt nữa.
Kiểm thử
5.3.1 Kiểm thử chức năng đăng nhập
Bảng 5 10 Kiểm thử chức năng đăng nhập.
TC Các bước thực hiện Kết quả dự kiến Kết quả đạt được
TC1 1 Nhập sai tài khoản
Thông báo tài khoản không tồn tại Đạt
TC2 1 Nhập tài khoản đúng
Mật khẩu không chính xác Đạt
TC3 1 Bỏ trống tài khoản
Tại view hiển thị, yêu cầu người dùng nhập đầy đủ tài khoản, mật khẩu Đạt
TC4 1 Nhập sai định dạng tài khoản
1 Thông báo mật khẩu sai
2 Dữ liệu được mã hóa đạt chuẩn về vấn đề bảo mật Đạt
TC5 1 Nhập tài khoản đúng
Chuyển hướng đến trang chủ tương ứng với quyền của người dùng Đạt
5.3.2 Kiểm thử chức năng Đăng ký
Bảng 5 11 Kiểm thử chức năng đăng ký
TC Các bước thực hiện Kết quả dự kiến Kết quả đạt được
TC1 1 Nhập sai định dạng email
2 Nhập sai định dạng mật khẩu
3 Nhập đúng định dạng tên đăng nhập
Thông báo nhập sai định dạng email, nhập lại mật khẩu sai. Đạt
3 Nhập lại mật khẩu sai
4 Nhập đúng định dạng tên đăng nhập
Thông báo nhập mật khẩu không khớp. Đạt
TC3 1 Nhập đúng email Thông báo nhập Đạt
3 Nhập lại mật khẩu đúng
4 Nhập sai định dạng tên đăng nhập
5 Bấm đăng ký sai định dạng tên đăng ký.
3 Bỏ trống xác thực lại mật khẩu
4 Bỏ trống tên đăng nhập
Thông báo không được bỏ trống các trường. Đạt
TC5 1 Nhập tên đăng nhập đúng định dạng
2 Nhập đúng định dạng mật khẩu
3 Nhập đúng xác thực mật khẩu
4 Nhập đúng email nhưng đã tồn tại
Thông báo email đã tồn tại Đạt
TC6 1 Nhập tên đăng nhập đúng định dạng
2 Nhập đúng định dạng mật khẩu
2 Nhập khớp mật khẩu lại
3 Bấm đăng ký Đăng ký thành công Đạt
5.3.3 Kiểm thử một số chức năng khác
TC Tên Các bước thực hiện Kết quả dự kiến Kết quả đạt được
TC1 Chức năng xem sản phẩm
Xem danh sách sản phẩm ngay khi click vào quản lý sản phẩm
Hiển thị các sản phẩm trong quản lý sản phẩm Đạt
Chức năng thêm sản phẩm
1 Nhập đầy đủ thông tin sản phẩm
2 Click nút thêm khi sản phẩm đã tồn tại trên web
Thông báo sản phẩm đã tồn tại Đạt
1 Nhập thiếu 1 hoặc nhiều trường.
2 Click nút thêm khi sản phẩm
Thông báo không được bỏ trống Đạt
1 Nhập đầy đủ thông tin sản phẩm nhưng sai định dạng
2 Click nút thêm khi sản phẩm
Thông báo nhập sai định dạng trường đó Đạt
TC5 1 Nhập đầy đủ thông tin sản phẩm
Thông báo “Loại tệp bạn đang cố Đạt nhưng sai định dạng file ảnh
2 Click nút thêm khi sản phẩm gắng tải lên không được phép.”
1 Nhập đầy đủ thông tin sản phẩm.
2 Click nút thêm khi sản phẩm
Thêm sản phẩm, hiển thị trang sản phẩm ra. Đạt
Chức năng sửa sản phẩm
1 Nhập thiếu 1 hoặc nhiều trường thông tin.
2 Click nút sửa khi sản phẩm
Thông báo không được bỏ trống Đạt
1 Nhập đầy đủ thông tin sản phẩm nhưng sai định dạng
2 Click nút sửa khi sản phẩm
Thông báo nhập sai định dạng trường đó Đạt
1 Nhập đầy đủ thông tin sản phẩm.
2 Click nút sửa khi sản phẩm
Thông báo sửa sản phẩm thành công, hiển thị trang sản phẩm. Đạt
Chức năng xóa sản phẩm
Click nút xóa sản phẩm.
Thông báo xóa thành công Hiển Đạt thị danh sách sản phẩm sau khi đã xóa
Chức năng thêm danh mục
1 Nhập đầy đủ thông tin danh mục
2 Click nút thêm khi danh mục đã tồn tại trên web
Thông báo danh mục đã tồn tại Đạt
1 Nhập thiếu 1 hoặc nhiều trường.
2 Click nút thêm khi danh mục
Thông báo không được bỏ trống Đạt
1 Nhập đầy đủ thông tin danh mục nhưng sai định dạng
2 Click nút thêm khi danh mục
Thông báo nhập sai định dạng trường đó Đạt
1 Nhập đầy đủ thông tin danh mục.
2 Click nút thêm khi danh mục
Thêm danh mục thành công, hiển thị trang danh mục. Đạt
Chức năng sửa danh mục
1 Nhập thiếu 1 hoặc nhiều trường thông tin.
Thông báo không được bỏ trống Đạt
2 Click nút sửa khi danh mục
1 Nhập đầy đủ thông tin danh mục nhưng sai định dạng
2 Click nút sửa khi danh mục
Thông báo nhập sai định dạng trường đó Đạt
1 Nhập đầy đủ thông tin danh mục.
2 Click nút sửa khi danh mục
Thông báo sửa sản phẩm thành công, hiển thị trang danh mụ. Đạt
Chức năng xóa danh mục
Click nút xóa danh mục.
Thông báo xóa thành công Hiển thị danh sách danh mục sau khi đã xóa Đạt
9 Đặt hàng Tại trang tạo đơn hàng cho sản phẩm, nhấn Đặt mua khi chưa đăng nhập
Yêu cầu đăng nhập hoặc đăng kí Đạt
0 Điền thiếu thông tin của 1 hoặc nhiều trường trong thông tin giao hàng
Thông báo không được để trống Đạt
1 Điền đầy đủ thông giao hàng.
2 Chọn hình thức thanh toán
3 Bấm nút thanh toán Đặt hàng thành công Đạt
KẾT QUẢ ĐẠT ĐƯỢC
Giao diện dành cho người mua hàng
Hình 6 1 Giao diện trang chủ
Hình 6 2 Giao diện trang tất cả sản phẩm
Hình 6 3 Giao diện trang chi tiết sản phẩm
Hình 6 4 Giao diện đăng nhập, đăng ký
Hình 6 5 Giao diện xác nhận thanh toán
Giao diện dành cho người quản trị
Hình 6 6 Giao diện list sản phẩm
Hình 6 7 Giao diện list danh mục
Hình 6 8 Giao diện list kiểu dáng
Hình 6 9 Giao diện Quản lý đơn hàng