Xây dựng website bán thiết bị di động theo yêu cầu

MỤC LỤC

Lý do chọn đề tài

    Vậy nên, với sự phát triển của thời đại, nhằm tối ưu hoá những sở thích cá nhân và tiếp cận người dùng thì website quản lý bán điện thoại di động chính là cách thức để đưa công nghệ điện thoại mới đến người tiêu dùng một cách nhanh chóng nhất. Cùng với việc bắt kịp các xu hướng công nghệ hiện đại, các dòng sản phẩm luôn được cập nhật một cách nhanh chóng, website còn có khả năng phân tích dữ liệu người dùng để đưa ra các đề xuất mua hàng nhằm tối thiểu hoá rủi ro tồn kho nhưng vẫn đáp ứng được yêu cầu của khách hàng mà không bị lỗi thời. Chung quy lại, website quản lý bán điện thoại không chỉ được tạo ra nhằm cải thiện cách tiếp thị đến thị trường mà có thể giúp doanh nghiệp có được doanh số mong muốn và tiếp cận được công nghệ và cả khách hàng mục tiêu.

    Website được tạo ra với các mục đích phục vụ cộng đồng, tín đồ đam mê công nghệ, đồng thời mang lại nguồn thu nhập và góp phần vào sự phát triển của doanh nghiệp nói riêng và đất nước nói chung. ● Kế thừa toàn bộ chức năng của Visitor, thay đổi thông tin cá nhân (thay đổi mật khẩu, xem đơn hàng đã mua, và thay đổi thông tin địa chỉ), đặt hàng, quản lí giỏ hàng ( thêm và xóa sản phẩm ở giỏ hàng) và thanh toán (có online), thêm sản phẩm vào danh sách yêu thích, đánh giá sản phẩm, bình luận/hỏi đáp trong từng sản phẩm và chat với admin. Bên cạnh đó, website bán điện thoại di động cung cấp công cụ quản lý toàn bộ hệ thống bằng trực tuyến, tạo điều kiện thuận lợi để mở rộng kinh doanh, tăng doanh số bán hàng và xây dựng một hệ thống kinh doanh trực tuyến tin cậy và chuyên nghiệp, thu hút sự quan tâm và lòng tin của khách hàng.

    Nội dung thực hiện 1. Khách hàng

    ● Quản lý doanh thu (từng tháng trong năm, doanh thu từng loại sản phẩm trong tháng, thống kê 5 sản phẩm bán chạy nhất trong tháng).  Website bán điện thoại di động này là một nền tảng thương mại điện tử thân thiện và chuyên nghiệp, mang đến cho khách hàng trải nghiệm mua sắm thuận tiện và đáng tin cậy. Với một giao diện trực quan và dễ sử dụng, trang web cung cấp một loạt các sản phẩm điện thoại di động từ các thương hiệu nổi tiếng và đáng tin cậy trên toàn cầu.

    React

    Hay nói cách khác, Redux là một predictable state management tool (công cụ quản lý cao cấp) cho các ứng dụng được viết bằng ngôn ngữ lập trình Javascript và còn được gọi là Redux js. Nhiệm vụ của store chính là quản lý, access các state được lưu, update state thông qua dispatch, cho phép truy cập state thông qua Getstate và đăng ký hoặc hủy đăng ký các listeners thông qua helper methods. ● Được phát hành chính thức từ thập niên 90s, MySQL hiện đang quản lý dữ liệu qua những cơ sở dữ liệu, với mỗi một cơ sở dữ liệu hoàn toàn có thể có rất nhiều những bản quan hệ có chứa dữ liệu.

    ● Dễ dàng sử dụng: MySQL đang là cơ sở dữ liệu dễ sử dụng, ổn định, tốc độ cao và hoạt động trên rất nhiều những hệ điều hành đang cung cấp 1 hệ thống lớn những hàm tiện ích rất mạnh. Như vậy cần phải áp dụng rất nhiều những biện pháp khác nhau để có thể gia tăng được tốc độ truy xuất những dữ liệu ví dụ như tạo cache MySQL hoặc chia tải database ra nhiều server. Theo đó cách thức nhận chức năng cụ thể đang được xử lý cùng với MySQL (ví dụ như kiểm toán, những giao. dịch, tài liệu tham khảo,…) khiến cho nó trở nên kém tin cậy hơn một số những hệ quản trị về cơ sở dữ liệu có quan hệ khác.

    Hình 2.1: React JS
    Hình 2.1: React JS

    NodeJS là gì [6.1]

    ● Lập trình kiến trúc hướng sự kiện và không đồng bộ: Tất cả các API của thư viện Node.js đều không đồng bộ, và không bị chặn (non-blocking). Server chuyển đến API tiếp theo sau khi gọi API đầu tiên và cơ chế thông báo Sự kiện của Node.js giúp máy chủ nhận phản hồi từ lệnh gọi API trước đó. Cơ chế sự kiện giúp server phản hồi theo cách không chặn (non-blocking) và làm cho máy chủ có khả năng mở rộng cao so với các máy chủ truyền thống.

    Node.js sử dụng chương trình luồng đơn và với cùng một chương trình có thể cung cấp dịch vụ cho một số lượng yêu cầu lớn hơn nhiều so với các máy chủ truyền thống như Apache HTTP Server. ● Micro Services: Node.js có thể làm tốt việc chia nhỏ một ứng dụng lớn thành các dịch vụ nhỏ và kết nối chúng lại với nhau. ● Nodejs hạn chế khả năng mở rộng, do đó các nhà phát triển không thể tận dụng cỏc phần cứng cấp server với lợi thế về mụ hỡnh đa lừi hiện nay.

    Firebase [7.1]

    ● Realtime Database: Cơ sở dữ liệu thời gian thực, lưu trữ dưới dạng JSON, đồng bộ hóa với mọi kết nối, an toàn và nhanh chóng. Realtime Database cho phép bạn lưu trữ và truy vấn dữ liệu một cách đơn giản và hiệu quả, không cần quan tâm đến việc thiết lập server hay viết code backend. ● Firebase Hosting: Dịch vụ deploy trang web và web app chỉ bằng những thao tác đơn giản, có tính an toàn cao, phù hợp cho việc hiển thị các trang như điều khoản dịch vụ, chính sách bảo mật.

    ● Firebase Cloud Messaging: Dịch vụ gửi nhận tin nhắn miễn phí, có thể sử dụng để push thông báo cho người dùng khi có tin nhắn mới, sự kiện mới. ● Firebase giúp tiết kiệm thời gian và chi phí phát triển ứng dụng, bằng cách cung cấp các dịch vụ và công cụ sẵn có và dễ sử dụng. ● Có nhiều tính năng hữu ích cho việc phát triển ứng dụng như xác thực người dùng, lưu trữ tệp tin, tích hợp thanh toán, thực hiện kiểm thử phần mềm và gỡ lỗi.

    PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 3.1. Danh sách các yêu cầu

    Thiết kế hệ thống 1. Frontend layer

     Modal: Thành phần model tương ứng với tất cả logic liên quan đến dữ liệu mà người dùng làm việc với nó.  View: Thành phần view được sử dụng cho tất cả logic giao diện người dùng của ứng dụng. View sử dụng mô hình hóa và trình bày dữ liệu ở dạng mà người dùng muốn.

    Một người dùng cũng có thể được phép thực hiện các thay đổi đối với dữ liệu được trình bày cho người dùng. Chúng bao gồm các trang tĩnh và động được kết xuất hoặc gửi đến người dùng khi yêu cầu chúng. ● Controller: Hoạt động như một giao diện giữa các thành phần Model và View để xử lý tất cả các logic nghiệp vụ và yêu cầu gửi đến, thao tác dữ liệu bằng mô hình thành phần và tương tác view để hiển thị đầu ra cuối cùng.

    Thiết kế dữ liệu

      Yêu cầu đặc biệt Người dùng phải có một tài khoản đã đăng ký bao gồm email, password. Khi người dùng thành công đăng xuất, hệ thống sẽ trở lại trạng thái cho Visitor và chỉ thực hiện được những chức năng của Visitor. Luồng cơ bản Người dùng cung cấp thông tin để tạo một tài khoản Đăng nhập vào website bằng tài khoản vừa đăng ký.

      Điều kiện sau cùng Khi đăng ký tài khoản mới thành công, người dùng sẽ dùng tài khoản đó để truy cập vào website. Điều kiện sau cùng Khi đăng ký tài khoản mới thành công, người dùng sẽ dùng tài khoản đó để truy cập vào website. Khi vào giỏ hàng, người dùng có thể thực hiện thanh toán các đơn hàng đã có trong giỏ hàng, xóa các đơn hàng hoặc chọn thêm những sản phẩm khác.

      Truy cập được vào giỏ hàng và thực hiện thanh toán những sản phẩm đã thêm vào giỏ hàng. Người dùng thực hiện được các chức năng có trong trang Profile (chỉnh sửa thông tin tài khoản, đổi mật khẩu, chỉnh thông tin vận chuyển, quản lý đơn hàng, đăng xuất tài khoản). Người quản lý có thể thực hiện được các chức năng (tìm kiếm sản phẩm, tạo mới sản phẩm, sửa chửa sản phẩm,…).

      Điều kiện sau cùng Sau khi thực hiện, sản phẩm sẽ được cập nhật theo yêu cầu của người quản lý. Điều kiện sau cùng Comment sẽ được hiển thị dưới sản phẩm, sẽ có người khác (user khác/ admin) vào trả lời.

      Bảng 3.3: Mô tả Use Case Login
      Bảng 3.3: Mô tả Use Case Login

      CÀI ĐẶT VÀ THỬ NGHIỆM 4.1. Công nghệ sử dụng

      Cài đặt

       Mở rộng quyền cho bên trung gian ( shipper ) nhằm hỗ trợ về mặt vận chuyển.  Tích hợp tính năng an toàn thông tin nhằm bảo mật thông tin khách hàng.  Bổ sung thêm tính năng dự đoán đơn hàng, doanh thu và doanh số dựa trên số liệu trong quá khứ.