1. Trang chủ
  2. » Luận Văn - Báo Cáo

đồ án i xây dựng website thương mại điện tử ứng dụng mô hình mvc

41 2 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Website Thương Mại Điện Tử Ứng Dụng Mô Hình MVC
Tác giả Đinh Tuấn Anh
Người hướng dẫn TS. Ngô Trung Hiếu
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Hệ Thống Thông Tin Quản Lý
Thể loại Đồ Án I
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 41
Dung lượng 1,77 MB

Cấu trúc

  • 1.1 Giới thiệu đề tài (9)
  • 1.2 Mục đích nghiên cứu (10)
  • 1.3 Mục tiêu đề tài (10)
  • Chương 2 Cơ sở lý thuyết 4 (9)
    • 2.1 Kiến trúc Website MVC (11)
      • 2.1.1 Tổng quan (11)
      • 2.1.2 Các thành phần trong kiến trúc MVC (12)
      • 2.1.3 Cách MVC hoạt động (13)
      • 2.1.4 Ưu điểm của mô hình MVC (14)
      • 2.1.5 Nhược điểm của mô hình MVC (15)
    • 2.2 Java Spring Boot Framework (16)
      • 2.2.1 Tổng quan về Java Spring (16)
      • 2.2.2 Java Spring Boot (17)
    • 2.3 Ứng dụng MVC, Spring Boot vào dự án (18)
      • 2.3.1 Lý do lựa chọn Spring Boot (18)
      • 2.3.2 ORM - Object Relational Mapping (18)
      • 2.3.3 HTML, CSS (18)
      • 2.3.4 Controller (18)
  • Chương 3 Phân tích hệ thống 12 (11)
    • 3.1 Yêu cầu chung (19)
      • 3.1.1 Mô tả hệ thống (19)
      • 3.1.2 Quy trình làm việc của hệ thống (19)
      • 3.1.3 Yêu cầu về chức năng của hệ thống (20)
    • 3.2 Sơ đồ phân rã chức năng (22)
      • 3.2.1 Khách hàng (22)
      • 3.2.2 Nhân viên (22)
    • 3.3 Các tác nhân tác động đến hệ thống (24)
      • 3.3.1 Khách hàng (24)
      • 3.3.2 Người tham quan, khách hàng mới (24)
      • 3.3.3 Nhân viên (24)
    • 3.4 Sơ đồ UseCase (25)
    • 3.5 Sơ đồ tuần tự cho các chức năng (26)
      • 3.5.1 Chức năng đăng nhập (26)
      • 3.5.2 Chức năng tìm kiếm sản phẩm (26)
      • 3.5.3 Chức năng thêm sản phẩm vào giỏ hàng (27)
      • 3.5.4 Chức năng thanh toán sản phẩm trong giỏ hàng (27)
      • 3.5.5 Chức năng quản lý sản phẩm (27)
  • Chương 4 Thiết kế hệ thống 22 (19)
    • 4.1 Thiết kế cơ sở dữ liệu (29)
      • 4.1.1 Sơ đồ thực thể liên kết (29)
      • 4.1.2 Bảng Account (31)
      • 4.1.3 Bảng Cart Item (31)
      • 4.1.4 Bảng Category (31)
      • 4.1.5 Bảng Customer (31)
      • 4.1.6 Bảng Order Detail (32)
      • 4.1.7 Bảng Order (32)
      • 4.1.8 Bảng Product (32)
      • 4.1.9 Bảng Role (33)
      • 4.1.10 Bảng Staff (33)
    • 4.2 Thiết kế giao diện ứng dụng Website (33)
      • 4.2.1 Trang chủ khách hàng (33)
      • 4.2.2 Trang đăng nhập (34)
      • 4.2.3 Trang đăng ký (35)
      • 4.2.4 Trang cửa hàng (35)
      • 4.2.5 Trang giỏ hàng (36)
      • 4.2.6 Trang thanh toán (36)
      • 4.2.7 Trang chủ phía nhân viên (37)
      • 4.2.8 Trang chủ quản trị (37)
      • 4.2.9 Trang quản lý tài khoản (38)
      • 4.2.10 Trang quản lý danh mục (38)
      • 4.2.11 Trang quản lý sản phẩm (38)
    • 2.1 Quá trình xử lý của kiến trúc MVC (0)
    • 2.2 Các cấu phần của Java Spring (0)
    • 3.1 Sơ đồ phân rã chức năng của khách hàng (0)
    • 3.2 Sơ đồ phân rã chức năng của nhân viên (0)
    • 3.3 Sơ đồ UseCase (0)
    • 3.4 Sơ đồ tuần tự cho chức năng đăng nhập (0)
    • 3.5 Sơ đồ tuần tự cho chức năng tìm kiếm sản phẩm (0)
    • 3.6 Sơ đồ tuần tự cho chức năng thêm sản phẩm vào giỏ hàng (0)
    • 3.7 Sơ đồ tuần tự cho chức năng thanh toán sản phẩm trong giỏ hàng (0)
    • 3.8 Sơ đồ tuần tự cho chức năng quản lý sản phẩm (0)
    • 4.1 Sơ đồ thực thể liên kết (0)
    • 4.2 Bảng Account (0)
    • 4.3 Bảng Cart Item (0)
    • 4.4 Bảng Category (0)
    • 4.5 Bảng Customer (0)
    • 4.6 Bảng Order Detail (0)
    • 4.7 Bảng Order (0)
    • 4.8 Bảng Product (0)
    • 4.9 Bảng Role (0)
    • 4.10 Bảng Staff (0)
    • 4.11 Trang chủ khách hàng (0)
    • 4.12 Trang đăng nhập (0)
    • 4.13 Trang đăng ký (0)
    • 4.14 Trang cửa hàng (0)
    • 4.15 Trang giỏ hàng (0)
    • 4.16 Trang thanh toán (0)
    • 4.17 Trang chủ nhân viên (0)
    • 4.18 Trang chủ quản trị (0)
    • 4.19 Trang quản lý tài khoản (0)
    • 4.20 Trang quản lý danh mục (0)
    • 4.21 Trang quản lý sản phẩm (0)

Nội dung

Ngoài ra chủ cửa hàng cũng mong muốn sử dụng chính phần mềm này chophép nhân viên bán hàng tại gian hàng của cửa hàng tạo đơn hàng và xử lý đơn hàngtại những cửa hàng truyền thống, cũng

Giới thiệu đề tài

TuanAnh ECommerce Shop là một cửa hàng thời trang được đưa vào hoạt động vào đầu năm 2022, sau khi dịch COVID19 bùng phát, tuy đại dịch đã cơ bản được kiểm soát, nhưng thói quen mua hàng của đại đa số khách hàng ở trong khu vực cửa hàng đã bị thay đổi lớn Trước đại dịch, khách hàng ưu tiên đến xem đồ, thử đồ mua và thanh toán tại cửa hàng, tuy nhiên sau hai năm đại dịch, khách hàng đã quen với việc mua hàng trực tuyến, chọn lựa mẫu mã, đặt hàng và chờ giao hàng đến tận nhà. Với sự thay đổi thói quen lớn của khách hàng như vậy cửa hàng quyết định mở thêm một gian hàng online, vừa cắt giảm chi phí thuê mặt bằng cho cửa hàng, vừa có thể tiếp cận đến phần lớn bộ phận khách hàng có thói quen sử dụng các dịch vụ mua hàng trực tuyến Ngoài ra chủ cửa hàng cũng mong muốn sử dụng chính phần mềm này cho phép nhân viên bán hàng tại gian hàng của cửa hàng tạo đơn hàng và xử lý đơn hàng tại những cửa hàng truyền thống, cũng như quản lý lương của nhân sự trong cửa hàng và lập báo cáo về các thông tin như doanh thu, hàng hoá, kho

Mặc dù hoạt động thương mại trực tuyến có nhiều sự khác biệt với hoạt động thương mại trực tiếp, tuy nhiên những phần chính của hoạt động thương mại vẫn không thay đổi, đó là hoạt động mua hàng và thanh toán.

Việc xõy dựng hệ thống bỏn hàng trực tuyến khụng chò giỳp tăng doanh thu cho cửa hàng, cũn làm cho cửa hàng tiếp cận được với nhiều khỏch hàng mới, khụng chò trong khu vực bị giới hạn bởi địa lý, mà còn có thể tiếp cận được các khách hàng ở xa không giới hạn khoảng cách giúp mở rộng quy mô bán hàng.

Mục đích nghiên cứu

Học tập các kỹ năng lập trình ứng dụng web theo mô hình MVC, đồng thời nắm rõ được các nghiệp vụ bán hàng qua ứng dụng website.

Cơ sở lý thuyết 4

Kiến trúc Website MVC

MVC là viết tắt ba chữ cái đầu của "Model - View - Controller"ctạm dịch là"Đối tượng - Giao diện - Điều khiển", mô tả một mẫu kiến trúc hệ thống rất phổ biến và có lịch sử phát triển lâu đời trong lĩnh vực phần mềm.

Trygve Reenskaug (1930 - 92 tuổi), một nhà khoa học máy tính, giáo sư danh dự của Đại học Oslo là người tạo ra và đề xuất kiến trúc MVC trong khi làm việc tại Trung tâm nghiên cứu Palo Alto trong một dự án tên là Smalltalk - 79 vào cuối thập niên 70 của thế kÿ trước Khi tạo ra kiến trúc này, Trygve Reenskaug và các cộng sự muốn có một thiết kế có thể cấu trúc bất kỳ dự án nào một cách rõ ràng và mạch lạc thay vì một mớ hỗn độn dữ liệu có kích thước lớn Thiết kế đầu tiên của ông có 4 thành phần chính: Model - View - Thing - Editor, nhưng sau khi thảo luận với các lập trình viên khác, ông và các cộng sự trong dự án Smalltalk quyết định sử dụng thiết kế với 3 thành phần: Model - View - Controller như ta thường thấy ngày nay.

Mẫu kiến trúc này được áp dụng rất rộng rãi trong việc xây dựng các ứng dụng choWebsite (Website Application), Mobile (Mobile Application) và các ứng dụng chạy trên các hệ điều hành khác như Window hay MacOS Trên thực tế thì nguyên mẫu kiến trúc MVC được xây dựng và phát triển cho các ứng dụng với giao diện tương tự như ứng dụng Desktop chứ không phải được phát triển dành cho các ứng dụng Website, tuy nhiên việc phân chia rõ ràng các thành phần (components) cũng như rạch ròi trong việc điều hướng dữ liệu khiến cho việc ứng dụng thiết kế này trong các ứng dụng Website là phổ biến hơn cả Đặc thù của ứng dụng Website là có nhiều người dùng, lượng dữ liệu trao đổi là khổng lồ nên lợi thế về sự rõ ràng trong vận hành và dễ dàng trong quản lý của kiến trúc này với các ứng dụng Website là không phải bàn cãi Hiện nay có rất nhiều Web framework sử dụng mẫu thiết kế này để thực thi các cấu hình, có thể kể đến C# với ASP.NET Core, Python với Django, Ruby với Rails hay như trong báo cáo này là Java với Spring/Spring Boot.

MVC được xây dựng rất thành công và phổ biến, sau này những kiến trúc hữu ích khác cũng ra đời trên nền tảng thiết kế MVC như Hierachical Model - View - Controller (HMVC), Model - View - Adapter (MVA), Model - View - Viewmodel (MVVM) Ứng dụng Website đầu tiên với mô hình MVC được phát triển và giới thiệu bởi NeXT’s WebObject vào năm 1996 dưới ngôn ngữ lập trình Objective-C, vì được vay mượn rất nhiều cấu phần từ dự án SmallTalk nên kiến trúc MVC được thể hiện vô cùng rạch ròi và rõ nét trong ứng dụng tiên phong này.

2.1.2 Các thành phần trong kiến trúc MVC

Model: Có thể coi đây là thành phần trung tâm trong kiến trúc Model mô hình hóa các đối tượng trong hệ thống, đại diện cho cấu trúc dữ liệu của ứng dụng và hoàn toàn tách biệt với giao diện người dùng Model là thành phần dùng để trực tiếp quản lý dữ liệu, logic cũng như các luật trong việc vận hành ứng dụng hay truy vấn dữ liệu. View: Tất cả các sự hiển thị thông tin đến người dùng (thường được gọi là giao diện người sử dụng - User Interface, UI) như các hình ảnh, bảng biểu, đồ thị, biểu đồ. Nói chung, thành phần này là nơi mà người sử dụng có thể trực tiếp thao tác với hệ thống, đưa ra yêu cầu với hệ thống và nhận được kết quả Cấu phần này xử lý logic hiển thị và vẽ lên các giao diện người dùng.

Controller: Ví Model như phòng làm việc và View là tiếp tân của một công ty thì Controller đóng vai một người quản lý Người quản lý này tiếp nhận các yêu cầu (request) từ cả hai phớa của hệ thống, xử lý yờu cầu và phõn phối đến đỳng địa chò, sau đó tiếp nhận, xử lý và trả về kết quả nhận được Công việc này đôi khi được cho là không cần thiết vì các yêu cầu có thể được xử lý dưới dạng request response như trong kiến trúc client server Tuy nhiên đấy là với một hệ thống đơn giản, nếu hệ thống có sự phức tạp nằm ở mức tương đối thì việc có một bộ phận hoạt động như người quản lý,chia bài sẽ là hoàn toàn cần thiết cho các tác vụ quản trị cũng như bảo mật hệ thống.

Luồng xử lý dữ liệu với kiến trúc MVC:

1 Đầu tiên ta có một yêu cầu từ người sử dụng hệ thống, yêu cầu này có thể được gửi đến Controller qua bất cứ cách nào Có thể là một request url từ người dùng, một form từ chính View hoặc một sự kiện được Controller nhận biết và nắm bắt.

2 Tiếp theo sau khi nhận được yêu cầu Controller sẽ xử lý yêu cầu đó dựa trên việc nhận dạng và sàng lọc Controller sẽ giao tiếp với Model bằng một phương thức riờng, phương thức này được định sẵn và chò cú Controller biết Controller sẽ đưa request của người dùng về dạng thông điệp này và gửi cho Model xử lý.

3 Sau khi nhận được thông điệp của Controller thì model tiến hành xử lý, có thể là tìm kiếm thông tin dữ liệu, thêm dữ liệu, cập nhật dữ liệu sau khi xử lý thì model tiến hành hồi đáp với controller Thông điệp được hồi đáp mang thông tin dữ liệu hoặc chò đơn giản là một thụng bỏo lỗi.

4 Sau khi nhận được thông điệp hồi đáp của Model, Controller cũng sẽ tiến hành trả lời request của người dùng bằng cách gửi dữ liệu hiển thị tới View.

5 Lúc này thì View tiến hành hiển thị những thông tin response cho người dùng hệ thống.

Hình dưới đây là mô hình của quá trình trên.

Hình 2.1: Quá trình xử lý của kiến trúc MVC

2.1.4 Ưu điểm của mô hình MVC

Mô hình MVC phù hợp với những dự án có đội ngũ phát triển làm việc độc lập với nhau, với các thành tách biệt và hoạt động riêng lẻ, giao tiếp với nhau qua các thông điệp với chuẩn nhất định, đội ngũ phát triển có thể hoạt động linh hoạt và hiệu quả. Nói chung mô hình MVC hiệu quả nhờ những ưu điểm nổi bật sau:

• Quá trình phát triển được hỗ trợ khiến công việc được hoàn thành nhanh và hiệu quả: Với việc từng thành phần hoạt động độc lập, các nhóm lập trình viên có thể chia nhỏ công việc, hoàn thành từng phần nhỏ của hệ thống với chất lượng chuyên môn cao, làm việc song song và hiệu quả MVC giúp các đội ngũ phát triển tiết kiệm được rất nhiều thời gian.

• Hỗ trợ các kỹ thuật bất đồng bộ, xử lý nhiều khung hiển thị cho một đối tượng: Với việc hoạt động trên nhiều ngôn ngữ lập trình khác nhau, hỗ trợ nhiều nền tảng và nhiều kiểu dữ liệu, MVC giúp ta có thể tạo nhiều khung hiển thị cho một đối tượng trong hệ thống, cũng như việc ta có thể dùng MVC để hiển thị nhiều loại dữ liệu.

• Dễ dàng thay đổi, chònh sửa: Với việc cỏc thành phần hoạt động tỏch biệt với nhau, ta có thể dễ dàng sửa đổi một thành phần ví dụ việc thay đổi View thì sẽ không ảnh hưởng gì đến Model hay việc thay đổi logic xử lý cũng không ảnh hưởng gì đến thành phần hiển thị.

• Giữ nguyờn hỡnh thỏi của dữ liệu: Mụ hỡnh MVC chò thực hiện truyền chứ không định dạng lại những dữ liệu trong hệ thống (nếu lập trình viên không chủ đích) nên việc tái sử dụng hay khai thác dữ liệu ban đầu sẽ trở nên dễ dàng và hiệu quả.

2.1.5 Nhược điểm của mô hình MVC

Java Spring Boot Framework

2.2.1 Tổng quan về Java Spring

Java Spring là một framework ứng dụng (Application Framework) và là bộ chứa trình điều khiển đảo ngược (Investion of Control, viết tắt là IoC) cho ngôn ngữ lập trình Java Bản chất của framework này có thể sử dụng được cho mọi ứng dụng Java. Trình điều khiển đảo ngược là một quy tắc lập trình rất hữu dụng Trong khi các quy tắc lập trỡnh truyền thống chò cho phộp việc phần mềm gọi đến cỏc thư viện cú thể tái sử dụng được thì IoC cho phép phần mềm và các hàm có thể gọi đến những hàm đặc biệt, mó nguồn cú thể tựy chònh khỏc bằng cỏch đúng gúi chỳng lại khi chạy chương trình và "tiêm" chúng vào các lớp thực thi Việc có thể gọi đến các hàm và mã nguồn tự định nghĩa này cho phép phần mềm có thêm tính module và có thể mở rộng một cách dễ dàng Khi các liên kết điều khiển giữa các đối tượng trong lập trình truyền thống là liên kết tĩnh, với IoC thì các liên kết điều khiển ấy về cơ bản là tĩnh nhưng mã nguồn được tìm và chạy bằng cách đọc những file cài đặt bên ngoài (external configuration) thay vì sử dụng những liên kết trực tiếp bên trong file mã nguồn Việc sử dụng kỹ thuật IoC giúp giảm sự phụ thuộc trực tiếp của các mã nguồn tới nhau thay vào đó là phụ thuộc vào các lớp trừu tượng (Abtraction Class) Cơ chế IoC là cơ chế trung tâm của Java Spring, việc đóng gói này cung cấp các đối tượng được gọi là beans qua các file XML hoặc các chú thích (Annotation) trong mã nguồn.

Tiêm sự phụ thuộc (Dependency Injection) là một trong những kỹ thuật thể hiện hiệu quả nhất của IoC Bằng cách tiêm các sự phụ thuộc, thay vì để các đối tượng phụ thuộc trực tiếp thì chúng ta thể hiện một đối tượng (hoặc static method) cung cấp các phụ thuộc của đối tượng khác.

Dưới đây là mô hình các cấu phần của Java Spring.

Hình 2.2: Các cấu phần của Java Spring

Java Spring Boot là một dự án mở rộng của Java Spring Spring Boot được coi là một giải pháp cấu hình cài đặt dự án Spring sao cho dự án ấy có thể cài đặt và tự chạy độc lập Với Java Spring thì việc khởi động ứng dụng bắt buộc phải có một máy chủ độc lập chạy ngoài, có thể là Tomcat hoặc deploy lên server Docker Spring Boot ngoài việc có thể chạy một mình còn nhiều lợi ích khác như:

• Được tạo ra để chạy một mình, lập trình và và thực thi.

• Được nhúng trực tiếp server TomCat hoặc Jetty, có thể chạy trực tiếp mà không cần xuất file War dùng để deploy.

• Cung cấp các đối tượng khởi tạo giúp việc cài đặt ứng dụng Maven/Gradle dễ dàng hơn.

• Tự động cấu hình Spring bất cứ khi nào có thể.

• Cung cấp cỏc tớnh năng sẵn sàng cho sản xuất như chò số, kiểm tra tỡnh trạng và cấu hình bên ngoài.

Phân tích hệ thống 12

Yêu cầu chung

Một cửa hàng bước đầu thực hiện số hóa việc kinh doanh quần áo Trang web sẽ giới thiệu tổng quan những mặt hàng cũng như cho phép khách hàng tiếp cận giá cả và xem mô tả chi tiết về các mặt hàng ấy Nhằm thu hút khách hàng, Website cho phép khách hàng không cần đăng ký vẫn có thể xem và tra cứu thông tin của hàng hóa Người sử dụng vừa có thể tra cứu thông tin của quần áo bán trong shop vừa có thể thêm sản phẩm trực tiếp vào giỏ hàng trong phiên đăng nhập Sau khi dạo qua cửa hàng trực tuyến khách hàng có thể đặt hàng thông qua việc thanh toán giỏ hàng. Ngoài ra, khách hàng có thể xem thông tin của mình trên hệ thống, khách chưa đăng ký tài khoản có thể tạo tài khoản mới.

Về phía người quản lý cửa hàng, nhân viên, có một số yêu cầu như quản lý tài khoản của khách hàng, của nhân viên, quản lý danh mục hàng hóa và danh sách sản phẩm bán trong cửa hàng.

3.1.2 Quy trình làm việc của hệ thống

• Khách hàng mới có thể tiếp cận trang web qua các phương thức khác nhau Khi khách hàng tiếp cận trang web của cửa hàng lần đầu tiên, cho phép khách hàng tra cứu và xem thông tin của đơn hàng Đồng thời khi khách hàng có nhu cầu mua hàng sẽ phải đăng ký tài khoản.

• Khách hàng mới khi đăng ký tài khoản sẽ được phép đăng nhập tài khoản bằng Google, xem thụng tin tài khoản và chònh sửa thụng tin tài khoản. Đặt hàng:

• Nếu khách hàng đã có tài khoản trên hệ thống thì có thể xem cửa hàng và thêm hàng vào giỏ.

• Sau khi thờm hàng vào giỏ, khỏch hàng cú thể chònh sửa lại giỏ hàng và thanh toán đơn hàng sau khi điền thông tin vào hóa đơn.

3.1.3 Yêu cầu về chức năng của hệ thống

Mỗi người dùng, bao gồm cả nhân viên và khách hàng có thể đăng ký một tài khoản duy nhất gắn theo email.

• Có thể đăng ký tài khoản (với khách hàng mới).

• Có thể xem thông tin tài khoản cá nhân.

• Cú thể chònh sửa thụng tin tài khoản cỏ nhõn.

• Có thể đăng nhập với tài khoản Google.

• Có thể xem thông tin sản phẩm.

• Có thể tìm kiếm thông tin sản phẩm.

• Có thể thêm sản phẩm vào giỏ hàng.

• Có thể xóa sản phẩm ra khỏi giỏ hàng.

• Có thể đặt mua các sản phẩm trong giỏ hàng.

• Có thể thanh toán hàng.

• Có thể xem thông tin tài khoản cá nhân.

• Cú thể chònh sửa thụng tin tài khoản cỏ nhõn.

• Có thể đăng nhập với tài khoản Google.

• Có thể xem thông tin sản phẩm.

• Có thể tìm kiếm thông tin sản phẩm.

• Có thể thêm sản phẩm vào giỏ hàng.

• Có thể xóa sản phẩm ra khỏi giỏ hàng.

• Có thể đặt mua các sản phẩm trong giỏ hàng.

• Có thể thanh toán hàng.

• Có thể thêm tài khoản mới.

• Có thể sửa thông tin tài khoản trên hệ thống.

• Có thể xóa thông tin tài khoản trên hệ thống.

• Có thể đổi chức danh tài khoản.

• Có thể tạo danh mục sản phẩm mới.

• Có thể sửa thông tin danh mục.

• Có thể xóa thông tin danh mục sản phẩm trên hệ thống.

• Có thể tạo sản phẩm mới.

• Có thể sửa thông tin sản phẩm.

• Có thể xóa thông tin sản phẩm.

• Giao diện trực quan, dễ sử dụng với ngay cả người yếu công nghệ.

• Website phải có tốc độ xử lý nhanh, hiệu năng ổn định.

• Thông tin nhạy cảm của khách hàng cần được mã hóa.

• Tốc độ tính toán phải nhanh, không có sai số.

• Đảm bảo tối đa an toàn của website khi đưa vào thực tiễn.

Sơ đồ phân rã chức năng

Hình 3.1: Sơ đồ phân rã chức năng của khách hàng

Hình 3.2: Sơ đồ phân rã chức năng của nhân viên

Các tác nhân tác động đến hệ thống

Là những người có nhu cầu mua quần áo, sử dụng dịch vụ mua hàng online của cửa hàng Có thể tìm, xem, thêm vào giỏ hàng và tiến hành đặt hàng/thanh toán. 3.3.2 Người tham quan, khách hàng mới

Là những khách hàng lần đầu tiên đến với trang web Có thể xem cửa hàng online, tìm kiếm và chọn xem chi tiết mặt hàng Có thể đăng ký tài khoản khách hàng mới. 3.3.3 Nhân viên

Là người quản lý gian hàng online Ngoài các tác vụ quản lý chính như:

• Quản lý danh mục sản phẩm.

Thì nhân viên còn có thể đặt hàng và nhập thông tin thanh toán giúp khách hàng.

Sơ đồ UseCase

Thiết kế hệ thống 22

Thiết kế cơ sở dữ liệu

4.1.1 Sơ đồ thực thể liên kết

Hình 4.1: Sơ đồ thực thể liên kết

Hình 4.5: Bảng Customer 4.1.6 Bảng Order Detail

Hình 4.8: Bảng Product 4.1.9 Bảng Role

Thiết kế giao diện ứng dụng Website

Hình 4.11: Trang chủ khách hàng 4.2.2 Trang đăng nhập

4.2.7 Trang chủ phía nhân viên

Hình 4.17: Trang chủ nhân viên

Hình 4.18: Trang chủ quản trị

4.2.9 Trang quản lý tài khoản

Hình 4.19: Trang quản lý tài khoản

4.2.10 Trang quản lý danh mục

Hình 4.20: Trang quản lý danh mục

4.2.11 Trang quản lý sản phẩm

Hình 4.21: Trang quản lý sản phẩm

• Nắm vững được cấu trúc cơ bản của thiết kế MVC.

• Nắm được cách thức sử dụng SpringBoot cùng các công cụ khác như MySQL để phát triển một ứng dụng website đơn giản.

• Có thể tạo ra được một website bán hàng trực tuyến với các chức năng cơ bản.

Hạn chế còn tồn tại

• Với lượng kiến thức đồ sộ về ngôn ngữ và Framework, em chưa có đủ khả năng và thời gian để tìm hiểu sao cho chọn được cách làm tối ưu nhất, do vậy hệ thống còn chậm và chưa được hoàn hảo về mặt hiệu năng.

• HTML CSS là hai ngôn ngữ định dạng hiệu quả nhưng còn khá thô sơ Hiệu năng mang lại cao nhưng khả năng tái sử dụng giao diện giữa các lần tải là chưa có, gây lãng phí.

• Kiến trúc của Sping Boot khá phức tạp, thích hợp để xây dựng những dự án trung bình và lớn Với những dự án có kích thước nhỏ và vừa thì một vài thiết lập còn thừa thãi và gây lãng phí tài nguyên.

• Với việc sử dụng SpringBoot thì những dự án với kiến trúc RESTFUL API sẽ khai thác được tối đa những lợi thế của FrameWork này, đây có thể là một hướng đi tiềm năng.

• Việc tái sử dụng giao diện với một FrameWork của ngôn ngữ lập trình JavaScript như reactJS hoặc VueJS có thể cho hiệu quả tốt hơn.

Ngày đăng: 18/06/2024, 17:04

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w