1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đồ án tốt nghiệp chuyên ngành công nghệ thông tin đề tài xây dựng phần mềm quản lý tiền lương

43 27 0

Đ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 Phần Mềm Quản Lý Tiền Lương
Tác giả Đỗ Hoàng Thiệu
Người hướng dẫn ThS. Đào Việt Anh
Trường học Trường Đại Học Hải Phòng
Chuyên ngành Công nghệ Thông tin
Thể loại Đề án tốt nghiệp
Năm xuất bản 2023
Thành phố Hải Phòng
Định dạng
Số trang 43
Dung lượng 5,6 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG 1: CƠ SỞ LÝ THUYẾT (12)
    • 1.1. Công nghệ ASP.NET MVC (12)
      • 1.1.3. Kiến trúc ASP.NET MVC (13)
      • 1.1.4. Sự tương tác giữa các thành phần trong mô hình MVC (15)
      • 1.1.5. Ưu nhược điểm của mô hình MVC (16)
    • 1.2. Vài nét về thương mại điện tử B2C [8] (16)
      • 1.2.1. Khái niệm (16)
      • 1.2.2. Phân loại mô hình B2C (16)
      • 1.2.3. Hoạt động của mô hình B2C (17)
  • CHƯƠNG 2: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG (18)
    • 2.1. Tổng quan về thương hiệu Company name slogan (18)
      • 2.1.1. Hiện trạng (19)
      • 2.1.2. Mục tiêu xây dựng hệ thống (19)
      • 2.1.3. Hạn chế (19)
    • 2.2. Đặc tả yêu cầu (19)
      • 2.2.1. Thu thập yêu cầu (19)
      • 2.2.2. Đặc tả yêu cầu (20)
      • 2.2.3. Các giả định và phụ thuộc (22)
    • 2.3. Mô tả use case (22)
      • 2.3.1. Xác định use case của các tác nhân (22)
      • 2.3.2. Sơ đồ Use Case (23)
      • 2.3.3. Kịch bản Use case (26)
    • 2.4. Biểu đồ tuần tự (31)
      • 2.4.1. Biểu đồ tuần tự đăng nhập (31)
      • 2.4.2. Biểu đồ tuần tự đăng ký thành viên (31)
      • 2.4.3. Biểu đồ tuần tự xem thông tin cá nhân (32)
      • 2.4.4. Biểu đồ tuần tự đổi mật khẩu (33)
    • 2.5. Thiết kế cơ sở dữ liệu (33)
      • 2.5.1. Biểu đồ lớp (33)
      • 2.5.2. Mô tả các bảng dữ liệu chính trong SQL SERVER (34)
  • CHƯƠNG 3: THỰC NGHIỆM XÂY DỰNG HỆ THỐNG (36)
    • 3.1. Môi trường cài đặt (36)
    • 3.2. Giới thiệu hệ quản trị SQL Server 2017[3] và VS 2019[4] (37)
      • 3.2.1. Giới thiệu hệ quản trị SQL Server 2017[3] (37)
      • 3.2.2. Giới thiệu về Visual studio 2019[4] (38)
    • 3.3. Giới thiệu giao diện website (39)
      • 3.3.1. Giao diện chấm công, tính lương (39)
      • 3.3.2. Giao diện đăng nhập, trang người dùng (40)
      • 3.3.3. Giao diện trang quản lý nhân viên (41)
  • KẾT LUẬN (42)
  • TÀI LIỆU THAM KHẢO (43)

Nội dung

Em xin chân thành cảm ơn sự giúp đỡ của toàn thể các giảng viên khoa côngnghệ thông tin của trường Đại học Hải Phòng, cũng như sự chỉ bảo của các anh chị ởcác công ty nơi em thực tập đã

CƠ SỞ LÝ THUYẾT

Công nghệ ASP.NET MVC

1.1.1 Lịch sử ra đời của MVC

Mô hình MVC (Model - View - Controller) là một kiến trúc phần mềm quan trọng trong kỹ thuật phần mềm, giúp lập trình viên phân chia ứng dụng thành ba thành phần độc lập: Model, View và Controller Mỗi thành phần đảm nhận một nhiệm vụ riêng, tạo điều kiện cho việc phát triển và bảo trì ứng dụng hiệu quả hơn.

Vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở Palo Alto, sự ra đời của giao diện đồ họa (GUI) và lập trình hướng đối tượng (OOP) đã cách mạng hóa cách lập trình viên tương tác với các thành phần đồ họa Những nghiên cứu tại Xerox PARC còn dẫn đến việc phát triển kiến trúc MVC (Model – View - Controller), một kiến trúc ngày càng được hoàn thiện để giải quyết các vấn đề trong quá trình phát triển phần mềm.

Vì vậy sau đó, lần lượt các MVC framework ra đời dựa trên mô hình MVC như: CodeIgniter, Zend, ASP.NET MVC …

Bảng 1.1: Các phiên bản ASP.NET MVC

Thời gian phát hành Phiên bản

1.1.2 Sự khác nhau giữa MVC và webform

Bảng 1.2: Sự khác nhau giữa MVC và WebForm

Thành phần ASP.net MVC chia ra làm 3 phần:

Mọi tương tác của người dùng với Views sẽ được xử lý thông qua việc thực hiện các action hành động trong Controllers

ASP.net WebForm sử dụng ViewState để quản lý

ASP.NET pages have a lifecycle that includes postbacks and utilizes web controls and events to perform actions for the user interface (UI) Due to user interactions, most ASP.NET WebForms tend to process slowly.

Việc kiểm tra và gỡ lỗi trong mô hình MVC có thể được thực hiện hiệu quả thông qua các unit test, giúp đánh giá dễ dàng cách thức hoạt động của các Controllers.

Với ASP.net WebForm, tất cả các tiến trình của ASP.net đều phải được thực thi, và việc thay đổi ID của bất kỳ Controls nào sẽ ảnh hưởng đến toàn bộ ứng dụng.

1.1.3 Kiến trúc ASP.NET MVC

Mô hình MVC bao gồm ba thành phần chính: M (Model), V (View) và C (Controller) M (Model) là nơi xử lý các nghiệp vụ tương tác với cơ sở dữ liệu, bao gồm các class và function để kết nối, truy vấn, thêm, xóa và sửa dữ liệu V (View) đảm nhận việc hiển thị thông tin và tương tác với người dùng, chứa các đối tượng GUI như textbox và hình ảnh, có thể hiểu đơn giản là tập hợp các form hoặc file HTML C (Controller) có nhiệm vụ nhận và điều hướng các yêu cầu từ người dùng, gọi đúng phương thức để xử lý, ví dụ như nhận request từ URL và form để thao tác với Model.

Model là thành phần chính trong việc xử lý dữ liệu, thường được áp dụng theo phương thức Active Record trong các framework Design pattern này giúp rút ngắn thời gian viết câu truy vấn, biến những truy vấn phức tạp trở nên dễ hiểu và thân thiện hơn với người dùng thông qua các thư viện đã được định nghĩa sẵn.

Model là các phương thức chịu trách nhiệm xử lý các tác vụ như chọn, chèn, cập nhật và xóa các bản ghi trong cơ sở dữ liệu Để lấy dữ liệu, model thường sử dụng mảng để gửi trả kết quả, cho phép lưu trữ nhiều thông tin hơn Do đó, khi bóc tách các bản ghi, model sẽ mang lại dữ liệu chi tiết từ cơ sở dữ liệu.

Khi làm việc với Model, cần tuân thủ nguyên tắc không xuất giá trị trực tiếp Tất cả dữ liệu phải được đưa vào mảng và trả về qua phương thức Sau đó, trong View, chúng ta sẽ sử dụng để truy xuất dữ liệu.

View là phần hiển thị thông tin trong quá trình gửi và nhận request Trước đây, việc sử dụng template để phân tách website thành giao diện và core là phổ biến, giúp việc chỉnh sửa giao diện trở nên dễ dàng hơn Tuy nhiên, các thư viện này có thể làm cho ứng dụng trở nên chậm chạp do phải phiên dịch nhiều lần các kịch bản.

View đóng vai trò quan trọng trong việc khắc phục những hạn chế hiện có, giúp giảm thiểu tối đa quá trình biên dịch nhiều lần Nhờ đó, ứng dụng trở nên mạnh mẽ và chuyên nghiệp hơn so với phương pháp lập trình truyền thống.

Controller có vai trò quan trọng trong việc điều hướng các yêu cầu của người sử dụng trong ứng dụng Tất cả các request đều phải đi qua Controller, nơi mà các tham số từ người dùng sẽ được xử lý để dẫn đến các tác vụ cụ thể Các tác vụ này sẽ tương tác với lớp Model để thực hiện công việc và trả kết quả về Controller Cuối cùng, Controller sẽ chuyển dữ liệu đã xử lý đến View, thành phần cuối cùng mà người sử dụng nhận được khi gửi request tới ứng dụng.

1.1.4 Sự tương tác giữa các thành phần trong mô hình MVC

Hình 1.2: Tương tác các thành phần trong MVC

Controller – View chịu trách nhiệm hiển thị hình ảnh, nút bấm và dữ liệu từ Controller để người dùng có thể quan sát và tương tác Trong một số trường hợp, nó có thể chỉ hiển thị các thành phần như hình ảnh và nút bấm mà không cần dữ liệu từ Model.

Controller – Model là quá trình xử lý khi controller nhận yêu cầu và tham số từ người dùng, sau đó sử dụng các lớp hoặc hàm trong Model để truy xuất dữ liệu chính xác.

Mô hình View cho phép các thành phần tương tác trực tiếp mà không cần thông qua Controller, chỉ đảm nhiệm việc hiển thị dữ liệu mà không can thiệp vào các logic xử lý nghiệp vụ Điều này tương tự như các khu vực hiển thị tĩnh trên website, chẳng hạn như block slidebar.

Vài nét về thương mại điện tử B2C [8]

Hình 1.3: Thương mại điện tử B2C

Mô hình B2C (Business to Consumer), hay còn gọi là mô hình bán lẻ trực tuyến, là hình thức thương mại điện tử diễn ra giữa doanh nghiệp và người tiêu dùng Trong mô hình này, các công ty, doanh nghiệp sẽ tiến hành buôn bán và trao đổi hàng hóa, dịch vụ trực tiếp với người tiêu dùng Doanh nghiệp có thể là nhà sản xuất, nhà phân phối hoặc đại lý, và đây là loại giao dịch phổ biến nhất trong thương mại điện tử, xuất phát từ nhu cầu mua sắm hàng hóa qua mạng.

Mô hình B2C được phân chia thành hai loại chính: cửa hàng điện tử và siêu thị điện tử Cửa hàng điện tử (e-store) là trang web bán hàng hóa và dịch vụ, thường do cá nhân, nhà sản xuất hoặc nhà bán lẻ sở hữu, với các tính năng như danh mục sản phẩm, công cụ tìm kiếm, giỏ hàng, cổng thanh toán và dịch vụ khách hàng Trong khi đó, siêu thị điện tử (e-mall) là một nền tảng chứa nhiều cửa hàng điện tử, nổi bật với danh bạ hàng hóa và danh mục các cửa hàng điện tử khác nhau.

1.2.3 Hoạt động của mô hình B2C

Mô hình B2C được sử dụng phổ biến trong siêu thị điện tử và các trang web bán lẻ, nơi khách hàng có thể truy cập, lựa chọn sản phẩm, cung cấp thông tin cần thiết để mua hàng, chọn phương thức thanh toán và hoàn tất đơn hàng.

Kết quả đạt được ở chương 1:

Công nghệ ASP.NET MVC5 mang đến cái nhìn sâu sắc về lịch sử phát triển của mô hình MVC, giúp người dùng phân biệt rõ ràng giữa MVC và webform Bài viết cũng khám phá kiến trúc của ASP.NET MVC, cùng với sự tương tác giữa các thành phần trong mô hình MVC Ngoài ra, nó còn nêu bật những ưu điểm và nhược điểm của mô hình MVC, cung cấp cái nhìn toàn diện cho người đọc.

- Hiểu rõ hơn về thương mại điện tử B2C.

- Cho thấy được tầm quan trọng của các công nghệ này trong việc xây dựng hệ thống website hiện nay.

PHÂN TÍCH, THIẾT KẾ HỆ THỐNG

Tổng quan về thương hiệu Company name slogan

Company name slogan là một trong những thương hiệu giày thể thao hàng đầu

Việt Nam Sản phẩm của thương hiệu Smartmenshop rất đa dạng từ quần áo, giày dép cho đến phụ kiện.

Sáng tạo và trẻ trung là yếu tố then chốt giúp các thiết kế của Company name slogan thu hút giới trẻ Sản phẩm Vestton không chỉ thể hiện sự tinh tế và sang trọng mà còn mang đến gu thời trang năng động và đa dạng Bên cạnh đó, các phụ kiện đi kèm phong phú giúp khách hàng dễ dàng lựa chọn và kết hợp phong cách thời trang của mình.

Sự nỗ lực và khả năng thay đổi của Company name slogan đã tạo nên sự khác biệt cho các sản phẩm thời trang Chúng tôi không chỉ tập trung vào việc sản xuất và cung cấp sản phẩm, mà còn mong muốn truyền cảm hứng thời trang, định hướng phong cách trẻ trung và phù hợp cho mọi lứa tuổi.

Tính đến năm 2021, thương hiệu thời trang Company name slogan đã có 14 chi nhánh trải dài khắp Đông Nam Bộ và Tây Nam Bộ, bao gồm TP Hồ Chí Minh, Vũng Tàu, Biên Hòa (Đồng Nai) và An Giang Ngoài việc mở rộng hệ thống cửa hàng, Company name slogan còn chú trọng phát triển dịch vụ chăm sóc khách hàng và bán hàng trực tuyến, đảm bảo giao hàng nhanh chóng đến tay người tiêu dùng trên toàn quốc.

Tại Company name slogan, chúng tôi mang đến cho Quý khách một trải nghiệm mới mẻ và phong cách độc đáo Không chỉ đơn thuần là tư vấn thời trang, chúng tôi cam kết chăm sóc và thấu hiểu nhu cầu của khách hàng, nhằm đảm bảo sự hài lòng tuyệt đối và xây dựng niềm tin vững chắc từ Quý khách.

Tại Company name slogan, đội ngũ quản lý và nhân viên luôn tận tâm và chuyên nghiệp, không ngừng nỗ lực vì quyền lợi của khách hàng là ưu tiên hàng đầu.

Với sản phẩm chất lượng cao, mẫu mã phong phú và giá cả hợp lý, chuỗi cửa hàng mang thương hiệu Company name slogan hứa hẹn sẽ phát triển mạnh mẽ, gia tăng doanh thu thông qua các chiến lược kinh doanh và marketing hiệu quả.

- Khách hàng đến và được nhân viên tư vấn chọn hàng.

- Sau khi đã chọn hàng xong thì khách hàng thanh toán trực tiếp với nhân viên.

- Việc quảng cáo cho chuỗi cửa hàng chủ yếu dựa trên mạng xã hội, qua thời gian dài kiểm chứng thì thấy hiệu quả chưa cao

- Do việc mua bán qua MXH chưa có cơ chế kiểm soát nên còn xuất hiện hiện tượng spam, đặt đơn ảo

Lượng sản phẩm lớn gây khó khăn trong việc kiểm soát, vì vậy các nhà lãnh đạo thương hiệu đã quyết định tách ra các bộ phận nhằm cải thiện quản lý bán hàng.

- Yêu cầu phát triển 1 website phục vụ cho bán giày thể thao thương hiệu Smartmen.

- Việc kiểm soát kho còn mang tính thủ công gây tốn thời gian, nhân lực

2.1.2 Mục tiêu xây dựng hệ thống

- Xây dựng nên 1 website chuyên bán hàng online, cụ thể là bán giày

- Giúp quảng bá thương hiệu Company name slogan tới những khách hàng online

- Thông tin luôn được cập nhật mới.

- Giúp khách hàng tìm thấy những thứ họ cần mà không cần đến trực tiếp cửa hàng.

- Giúp chủ cửa hàng nắm bắt được tình hình kinh doanh của cửa hàng mình nhanh và chính xác nhất.

- Cần có thêm nhân viên bên mảng kinh doanh online, biết sử dụng các tác vụ như đăng tin sản phẩm, kiểm tra hóa đơn,…

- Cần liên kết hợp tác với một đơn vị vận chuyển hàng uy tín để giao hàng tới tận tay khách hàng và đảm bảo chất lượng.

Đặc tả yêu cầu

Dựa trên nhu cầu của khách hàng và mong muốn của chủ cửa hàng, tôi đã quyết định phát triển website bán hàng 4menshoe.vn nhằm giới thiệu sản phẩm đến tay người tiêu dùng Hệ thống này được xây dựng trên nền tảng công nghệ ASP.NET.

MVC5 với các đặc điểm nổi bật như: Tính năng linh hoạt, khả năng mở rộng, giao diện thân thiện…

Bảng 2.1 : Phân tích yêu cầu chức năng hệ thống

STT Yêu cầu chức năng Ghi chú

Admin có thể nâng cấp tài khoản user lên quyền nhân viên 1.2: Admin có quyền xem thông tin khách hàng

1.3: Admin có thể sử dụng đầy đủ các chức năng như nhân viên

2.1: Nhân viên có thể đăng nhập vào hệ thống

2.2: Nhân viên có thể thêm 1 loại sản phẩm mới

2.3: Nhân viên có thể thêm 1 SP mới và đưa thông tin sản phẩm lên website

2.4: Nhân viên có thể thay đổi các thông tin hoặc xóa 1 sản phẩm đã có trên website

Bao gồm các thông tin cơ bản của SP như hình ảnh, giá, tên,….

2.5: Nhân viên có thể quản lý đơn hàng

Xem đơn hàng, thay đổi trạng thái giao hàng 2.6: Nhân viên có thể ẩn/hiện các comment để tránh spam

2.7: Nhân viên có thể xem được danh sách những sản phẩm bán chạy nhất

2.8: Nhân viên có thể kiểm soát được số lượng SP tồn trong kho theo từng loại size

Nghiệp vụ quản lí kho

3.Khách hàng 3.1: Khách hàng có thể đăng nhập vào hệ thống

Việc đăng nhập vào hệ thống và thanh toán sẽ giúp tích điểm để khách hàng nhận nhiều ưu đãi

3.2: Khách hàng có thể bình luận về sản phẩm

3.3: Ngoài ra khách hàng có thể sử dụng đầy đủ các chức năng như khách vãng lai

4.1: Khách vãng lai có thể tìm kiếm sản phẩm

4.2: Khách vãng lai có thể xem chi tiết SP

4.3: Khách vãng lai có thể thêm SP vào giỏ hàng

4.4: Khách vãng lai có thể quản lý SP trong giỏ hàng của mình

4.5: Khách vãng lai có thể tiến hành thanh toán và chọn hình thức thanh toán

4.6: Khách vãng lai có thể rating để đánh giá SP

4.7 Khách vãng lai có thể đăng ký để trở thành khách hàng

2.2.2.2 Yêu cầu phi chức năng

Thời gian là yếu tố quan trọng trong việc đánh giá hiệu suất của hệ thống, bao gồm các yêu cầu như thời gian phản hồi, thời gian xử lý và thời gian trả kết quả Những yêu cầu này cần được lượng hóa để đảm bảo khả năng đánh giá chính xác trong trạng thái hoạt động bình thường của hệ thống.

Công suất tối đa của hệ thống được xác định bởi các giới hạn tối đa của các tham số trong điều kiện hoạt động bình thường, nhằm đáp ứng nhu cầu của người sử dụng Các tham số này bao gồm số lượng đối tượng hoặc thực thể có khả năng lưu trữ, số lượng người truy cập đồng thời, băng thông, khối lượng giao dịch thành công trong một đơn vị thời gian, và kích thước cơ sở dữ liệu.

Giao diện người sử dụng đóng vai trò quan trọng trong việc nâng cao mức độ thân thiện trong các tương tác giữa hệ thống và người dùng Để tăng cường tính dễ sử dụng, hệ thống cần chú trọng đến các thuộc tính như tông màu, thiết kế đồ họa, và cách bố trí các cửa sổ, danh mục và biểu tượng.

Bảo mật: Mức độ một hệ thống đảm bảo việc truy cập dữ liệu là chỉ được phép đối với các đối tượng được phân quyền tương ứng

Xác thực là quá trình kiểm tra độ chính xác của một thực thể khi giao tiếp với hệ thống, dựa trên các thông tin đã biết, thông tin hiện có và thông tin xác định tính duy nhất của thực thể đó.

2.2.3 Các giả định và phụ thuộc

Nhân viên bán hàng của cửa hàng phải có kiến thức cơ bản về tin học.

- Mức độ thích nghi của khách hàng khi sử dụng website.

- Mức độ thích nghi của khách hàng với việc mua sắm online.

- Quy trình nghiệp vụ sát với thực tiễn để đưa ra các chức năng cho phù hợp

- Trình độ tin học của nhân viên bán hàng

Mô tả use case

2.3.1 Xác định use case của các tác nhân

Bảng 2.2: Xác định use case của các tác nhân

1.1.1: Xem danh sách tài khoản

1.1.1: Nâng quyền cho tài khoản

1.1.2: Xem thông tin khách hàng

1.1.3: Khóa tài khoản khách hàng

1.2: Admin có thể sử dụng đầy đủ các chức năng như nhân viên

2.1.1: Hiển thị danh sách sản phẩm đã có trong kho

2.1.3: Sửa thông tin sản phẩm

2.1.5: Tìm kiếm sản phẩm trong quản trị

2.1.6: Hiển thi danh sách loại SP đã có

2.1.7: Thêm loại sản phẩm mới

2.2.1: Hiển thị danh sách đơn hàng

2.2.2: Xem chi tiết đơn hàng

2.2.3: Thay đổi trạng thái giao hàng

2.3.1: Xem danh sách đợt khuyến mại

2.3.3: Thêm đợt khuyến mại mới

2.4.1: Xem được lượt người truy cập vào website

2.4.2: Xem danh sách những sản phẩm bán chạy nhất

2.4.3: Xem những sản phẩm sắp hết hàng trong kho

3.1: Đăng nhập, quản lý tài khoản cá nhân

3.1.2: Thay đổi thông tin cá nhân

3.1.2: Trả lời bình luận của người khác

3.3: Ngoài ra khách hàng có thể sử dụng đầy đủ các chức năng như khách vãng lai

4.1.3: Hiển thi danh sách SP

4.2.1: Thêm SP vào giỏ hàng

4.2.2: Sửa số lượng SP trong giỏ hàng

4.2.3: Xóa SP trong giỏ hàng

4.3.1: Chọn hình thức thanh toán

4.3.2: Cung cấp thông tin giao hàng và xác nhận thanh toán 4.4: Chấm điểm bằng gắn sao cho SP

2.3.2.1 Sơ đồ use case tổng quát

Hình 2.1: Sơ đồ use case tổng quát

2.3.2.2 Sơ đồ phân rã UC01: quản lý thông tin cá nhân

Hình 2.2: Sơ đồ phân rã use case quản lý thông tin cá nhân2.3.2.3 Sơ đồ phân rã UC06: quản lý danh sách người dùng

Hình 2.3: Sơ đồ phân rã use case quản lý user

Bảng 2.1: Kịch bản Use case đăng ký thành viên

Các actor liên quan Khách hàng, nhân viên Điều kiện tiên quyết Không có

Luồng sự kiện chính 1 Use case bắt đầu khi người dùng chọn đăng ký

2 Người dùng điền thông tin cá nhân vào form đăng ký

3 Nhấn nút đăng ký Luồng sự kiện phụ Ở bước 2, nếu các thông tin không hợp lệ hoặc tên người dùng đã tồn tại hệ thống sẽ không cho đăng ký

Hệ thống yêu cầu người dùng nhập lại thông tin hoặc hủy bỏ việc đăng ký

Hậu điều kiện Một tài khoản mới được tạo

Bảng 2.2: Kịch bản Use case đăng nhập

Tên Use Case Đăng nhập

Tên Actor Người dùng hệ thống bao gồm Admin, Nhân viên bán hàng, Khách hàng

Mô tả UC cho phép người dùng đăng nhập vào hệ thống với các quyền hạn tương ứng.

Tiền điều kiện Người dùng đã có tài khoản trong hệ thống

Luồng sự kiện chính 1 Người dùng chọn chức năng Đăng nhập

2 Form Đăng nhập hiển thị

3 Hệ thống yêu cầu nhập tên và mật khẩu vào form.

4 Người dùng nhập đầy đủ thông tin tên và mật khẩu. A1 Luồng sự kiện phụ 1.

5 Người dùng nhấn nút “Đăng nhập”.

6 Hệ thống kiểm tra thông tin tài khoản người dùng. A2 Luồng sự kiện phụ 2.

7 Thông báo người dùng đã đăng nhập thành công vào hệ thống.

Luồng sự kiện phụ A1: Người dùng chọn hủy bỏ, không muốn đăng nhập.

1 Sau khi xem qua thông tin, người dùng quyết định hủy bỏ việc đăng nhập.

A2: Thông tin không hợp lệ.

1 Thông tin đăng nhập không hợp lệ.

2 Hệ thống thông báo thông tin đăng nhập không hợp lệ.

Hậu điều kiện Người dùng đăng nhập thành công và có thể sử dụng các chức năng mà hệ thống cung cấp

Bảng 2.3: Kịch bản Use case đăng xuất

Tên Use Case Đăng xuất

Tên Actor Người dùng hệ thống bao gồm Admin, Nhân viên bán hàng, Khách hàng

Mô tả Khi người dùng muốn thoát ra khỏi hệ thống. Tiền điều kiện Người dùng đã đăng nhập vào hệ thống.

Luồng sự kiện chính 1.Từ giao diện của hệ thống, người dùng chọn chức năng “Đăng xuất”.

2.Hệ thống hiển thì thông báo “Bạn có muốn đăng xuất khỏi hệ thống?” và 2 nút chức năng: Có, Hủy. A1 Người dùng chọn Hủy.

3 Người dùng chọn nút Có 4.Thông báo người dùng đã đăng xuất thành công. 5.Use case kết thúc.

Luồng sự kiện phụ A1: Người dùng chọn Hủy.

1 Người dùng quyết định hủy bỏ việc đăng xuất.

2 Tiếp tục sử dụng các use case khác.

Hậu điều kiện Đăng xuất khỏi hệ thống theo yêu cầu của người dùng.

Bảng 2.4: Kịch bản Use case xem thông tin cá nhân

Use case Xem thông tin cá nhân

Use case cho phép người dùng xem thông tin tài khoản của mình, liên quan đến các actor như khách hàng và nhân viên Điều kiện tiên quyết là người dùng đã đăng nhập.

Luồng sự kiện chính Chọn mục “Thông tin cá nhân”

Trường hợp ngoại lệ Không có

Hậu điều kiện Màn hình hiển thị chi tiết thông tin cá nhân

Bảng 2.5 : Kịch bản Use case sửa thông tin cá nhân

Use case Sửa thông tin cá nhân

Use case cho phép người dùng chỉnh sửa thông tin cá nhân của mình, liên quan đến các actor như khách hàng, nhân viên và admin Điều kiện tiên quyết là người dùng phải đã đăng nhập.

Luồng sự kiện chính Chọn mục “Thông tin cá nhân”

2 Nhập thông tin muốn sửa

Trường hợp ngoại lệ Ở bước 2, hệ thống không cho sửa thông tin cá nhân với thông tin điền không hợp lệ, hệ thống yêu cầu nhập lại thông tin

Hậu điều kiện Hệ thống báo sửa thông tin cá nhân thành công

Bảng 2.6 : Kịch bản Use case đổi mật khẩu

Use case Đổi mật khẩu

Use case cho phép người dùng đổi mật khẩu khi biết mật khẩu cũ, liên quan đến các actor như khách hàng, admin và nhân viên Điều kiện tiên quyết là người dùng đã đăng nhập.

Khi người dùng chọn mục thông tin cá nhân để đổi mật khẩu, họ sẽ điền vào các trường thông tin bao gồm mật khẩu cũ, mật khẩu mới và xác nhận mật khẩu mới.

Để đổi mật khẩu, người dùng cần nhấn nút đổi mật khẩu Nếu mật khẩu cũ không chính xác, mật khẩu mới không hợp lệ, hoặc xác nhận mật khẩu không khớp, hệ thống sẽ không cho phép thực hiện và yêu cầu người dùng thực hiện lại các bước trước đó Khi hoàn tất, người dùng sẽ đổi mật khẩu thành công.

Bảng 2.7 : Kịch bản Use case lấy lại mật khẩu

Use case Lấy lại mật khẩu

Use case cho phép người dùng thay đổi mật khẩu khi có tài khoản đăng ký và xác thực qua email Các actor liên quan bao gồm khách hàng, admin và nhân viên Điều kiện tiên quyết là người dùng phải có tài khoản đã đăng ký và thông tin email để khôi phục mật khẩu.

Luồng sự kiện chính 1 Use case bắt đầu khi người dùng chọn

2 Người dùng điền tên tài khoản, tài khoản email

3 Nhấn nút lấy lại mật khẩu

4 Người dùng copy đoạn mã gửi qua email, ấn button “xác nhận”

6 Nhấn button “xác nhận mật khẩu” Trường hợp ngoại lệ (Bước 2) Người dùng nhập sai email đăng ký, hệ thống yêu cầu nhập lại email

(Bước 4) Người dùng nhập sai đoạn mẫ khôi phục mật khẩu, hệ thống yêu cầu thực hiện lại bước 4

(Bước 5) Người dùng nhập mật khẩu không hợp lệ, hệ thống yêu cầu nhập lại

Hậu điều kiện Người dùng đổi mật khẩu thành công

Bảng 2.8: Kịch bản Use case thống kê

Use case cho phép người dùng xem thống kê của website, với các actor liên quan bao gồm Admin và nhân viên Điều kiện tiên quyết là người dùng đã đăng nhập vào tài khoản Admin hoặc nhân viên Luồng sự kiện chính bắt đầu khi người dùng nhấn vào nút “thống kê”.

Màn hình sẽ hiển thị ra thống kê của website Trường hợp ngoại lệ Không có

Hậu điều kiện Admin, nhân viên xem được thống kê của website

Bảng 2.9: Kịch bản Use case quản lý danh sách tài khoản

Use case Quản lý tài khoản

Mô tả chung Use case cho phép admin quản lý quyền hạn của các tài khoản, xóa tài khoản, thêm mới tài khoản, kích hoạt hoặc khóa tài khoản

Các actor liên quan Admin Điều kiện tiên quyết Đã đăng nhập tài khoản admin

Luồng sự kiện chính Chọn quản lý tài khoản

Admin có thể thực hiện các chức năng:

 Điền thông tin tài khoản

 Chọn quyền hạn phù hợp hoặc nhấn button

4 Kích hoạt/khóa tài khoản

Nhấn nút “kích hoạt” hoặc “khóa” để thực hiện thao tác Trong trường hợp ngoại lệ (Chức năng 1 và 2), nếu thông tin không hợp lệ được thêm hoặc sửa, hệ thống sẽ thông báo lỗi và yêu cầu người dùng điền lại thông tin hợp lệ Hậu điều kiện bao gồm việc tài khoản mới được tạo, quyền hạn được sửa đổi, hoặc tài khoản bị xóa, cũng như việc kích hoạt hoặc khóa tài khoản.

Biểu đồ tuần tự

2.4.1 Biểu đồ tuần tự đăng nhập

Hình 2.4: Biểu đồ tuần tự đăng nhập 2.4.2 Biểu đồ tuần tự đăng ký thành viên

Hình 2.5: Biểu đồ tuần tự đăng ký thành viên 2.4.3 Biểu đồ tuần tự xem thông tin cá nhân

Hình 2.6: Biểu đồ tuần tự xem thông tin cá nhân

2.4.4 Biểu đồ tuần tự đổi mật khẩu

Hình 2.7: Biểu đồ tuần tự đổi mật khẩu

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

2.5.2 Mô tả các bảng dữ liệu chính trong SQL SERVER

- Lưu các banner về website

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 Id Int Primary key Id

5 Content Nvarchar Nội dung chính

7 Created date Datetime Thời gian tạo

8 Modified_date Datetime Thời gian thay đổi

- Lưu các loại sản phẩm (danh mục sản phẩm) trong cửa hàng

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 Id Bigint Primary key Id

2 Name Nvarchar Tên danh mục

3 meta_title Nvarchar Tên không dấu

4 id_parent Bigint id danh mục cha

5 created_date datetime Thời gian tạo

6 Modifed_date datetime Thời gian sửa

7 Meta_Description nvarchar Mô tả

8 Seo_title nvarchar Tiêu đề Seo

- Lưu các sản phẩm trong cửa hàng

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 Id bigint Primary key Id

2 Cate_id bigint Foreign key id danh mục sản phẩm

3 Name nvarchar Tên sản phẩm

4 meta_title nvarchar Tên không dấu

5 Code nvarchar Mã sản phẩm

6 Description nvarchar Mô tả sản phẩm

7 Image nvarchar Đường dẫn hình ảnh

10 Promotion_price decimal Giá khuyến mại

12 View_count Int Số lượt xem

13 Created date datetime Thời gian tạo

14 Created by nvarchar Người tạo

15 Modified_date datetime Thời gian thay đổi

14 Modified by nvarchar Người tạo

- Chứa các bình luận của khách hàng

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 id Int Primary key Id

2 id_user Int Foreign key id người dùng

3 id_product Int Foreign key id sản phẩm

4 content nvarchar Nội dung bình luận

5 Created date datetime Thời gian tạo

- Chứa thông tin cơ bản về đơn hàng

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 id Int Primary key Mã đơn hàng

2 Ship name nvarchar Tên người nhận

3 id_customer Int Foreign key id khách hàng

4 date_order date Ngày mua

6 status nvarchar Trạng thái đơn hàng

7 created_date datetime Thời gian tạo

8 Ship email email Mail người nhận

9 Ship phone Int Số điện thoại người nhận

10 Ship address nvarchar Địa chỉ nhận

- Lưu thông tin chi tiết về đơn hàng

Stt Tên trường Kiểu dữ liệu Khóa Mô tả

1 id int Foreign key Id

2 id_order int Foreign key id đơn hàng

3 Id_product int Foreign key id sản phẩm

4 quantity int Số lượng sản phẩm

5 unit_price decimal Đơn giá sản phẩm

6 created_at datetime Thời gian tạo

Kết quả đạt được ở chương 2:

Hệ thống bán hàng Smartmenshop được phát triển trên nền tảng công nghệ ASP.NET MVC5 nhằm giới thiệu sản phẩm đến khách hàng Qua khảo sát ban đầu, các yêu cầu cần thiết đã được xác định, bao gồm tính năng linh hoạt, khả năng mở rộng và giao diện thân thiện.

- Xác định được các chức năng cần có, luồng dữ liệu và các thực thể trong hệ thống để từ đó thiết kế CSDL.

- Xử lý các chức năng và thiết kế chương trình.

THỰC NGHIỆM XÂY DỰNG HỆ THỐNG

Môi trường cài đặt

Việc chọn lựa công nghệ phù hợp với ứng dụng phát triển là rất quan trọng Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, nhiều công nghệ và ngôn ngữ mới đã ra đời để đáp ứng nhu cầu đa dạng trong các lĩnh vực khác nhau.

Visual Studio 2019 là một IDE mới mẻ và hứa hẹn cho phát triển ứng dụng quản lý Đề tài “Nghiên cứu kỹ thuật lập trình MVC và ứng dụng xây dựng Website bán giày thể thao” được phát triển dựa trên kiến thức nghiệp vụ cơ bản kết hợp với công nghệ hiện có trong ngôn ngữ lập trình.

•Công nghệ sử dụng: ASP.NET MVC5, bootstrap 4

•Ngôn ngữ lập trình: C#, JS

•Lưu trữ dữ liệu: MS SQL Server 2017.

Giới thiệu hệ quản trị SQL Server 2017[3] và VS 2019[4]

3.2.1 Giới thiệu hệ quản trị SQL Server 2017[3]

SQL Server 2017 là một hệ quản trị cơ sở dữ liệu (RDBMS) sử dụng ngôn ngữ SQL để truy vấn và quản lý dữ liệu Hệ thống này bao gồm cơ sở dữ liệu, máy chủ dữ liệu và các ứng dụng hỗ trợ quản lý dữ liệu cùng các thành phần khác trong RDBMS.

SQL Server 2017 được tối ưu cho môi trường cơ sở dữ liệu rất lớn lên đến Tera-Byte, phục vụ đồng thời hàng ngàn người dùng Nó có khả năng kết hợp hiệu quả với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server và Proxy Server.

Gói Enterprise cung cấp hỗ trợ không giới hạn cho số lượng CPU và kích thước cơ sở dữ liệu Ngoài ra, gói này cũng hỗ trợ RAM không giới hạn, tuy nhiên, điều này phụ thuộc vào kích thước RAM tối đa mà hệ điều hành hỗ trợ, cùng với khả năng tương thích với các hệ thống 64bit.

Standard: Tương tự như bản Enterprise nhưng chỉ hỗ trợ 4 CPU Ngoài ra phiên bản này cũng không được trang bị một số tính năng cao cấp khác.

Bản Workgroup tương tự như bản Standard nhưng chỉ hỗ trợ tối đa 2 CPU và 3GB RAM Trong khi đó, bản Express là phiên bản miễn phí, cho phép sử dụng 1 CPU, 1GB RAM và giới hạn kích thước cơ sở dữ liệu ở mức 4GB.

Cài đặt Microsoft NET Framework 2.0: Để cài đặt thành công SQL Server Express Edition hay các phiên bản SQL Server 2017 khác, Microsoft NET Framework 2.0 phải được cài đặt trước.

Gỡ bỏ các phiên bản Beta, CTP hoặc Tech Preview của SQL Server 2017, Visual Studio 2019 và Microsoft NET Framework 2.0 đã cài đặt trước.

Cài đặt SQL Server 2017 Express Edition: Microsoft SQL Server 2017 Express Edition là phiên bản miễn phí, dễ sử dụng và “nhẹ” của Microsoft SQL Server

2017 Microsoft SQL Server 2017 Express Edition được tích hợp trong Visual Studio

2019 tạo ra sự dễ dàng trong việc phát triển các ứng dụng hướng CSDL SQL Server

2017 Express Edition được tự do sử dụng trong các ứng dụng thương mại và dễ dàng cập nhật lên các phiên bản cao hơn khi cần thiết.

To install SQL Server Management Studio Express, which offers a user-friendly interface for interacting with Microsoft SQL Server 2017 Express Edition, it is essential to first have MSXML 6.0 installed.

3.2.2 Giới thiệu về Visual studio 2019[4]

Visual Studio 2019 hỗ trợ các ngôn ngữ lập trình hướng đối tượng như C#, VB.Net, J# và C++.Net, với nhiều cải tiến đáng kể Đây là bộ công cụ phát triển phần mềm tích hợp mạnh mẽ, cung cấp nhiều tính năng hấp dẫn cho lập trình viên.

Thiết kế giao diện, hỗ trợ viết mã (coding)

Visual Studio.Net mang đến trải nghiệm lập trình tuyệt vời với tính năng hỗ trợ viết mã IntelliSense Tính năng này không chỉ giúp lập trình viên viết mã nhanh chóng và chính xác hơn, mà còn hỗ trợ những người mới làm quen với Net một cách hiệu quả.

Visual Studio 2019 cho phép người dùng tái sử dụng các đoạn mã mẫu, đồng thời hỗ trợ tạo ứng dụng với giao diện hấp dẫn tương tự như Outlook.

Xây dựng ứng dụng Web nhanh hơn

Visual Studio 2019 đã giới thiệu công cụ phát triển Web mới mang tên Visual Web Developer, cho phép tạo ra các ứng dụng Web bằng ASP.NET 2.0 Công cụ này tích hợp khoảng 50 điều khiển Web mới, giúp phát triển ứng dụng Web nhanh chóng và dễ dàng hơn Một trong những cải tiến đáng chú ý của ASP.NET 2.0 là khả năng tạo Master Page, cho phép các trang khác kế thừa Master Page Ngoài ra, Visual Web Developer còn nổi bật với tính năng dễ dàng tạo dự án ứng dụng Web một cách đơn giản.

Với Visual Studio 2019, việc tạo ứng dụng Web trở nên đơn giản hơn bao giờ hết, không còn cần phải xác định thư mục ảo trên máy chủ Web IIS Điều này giúp giảm bớt sự phức tạp khi sao chép dự án sang máy khác, mang lại trải nghiệm tương tự như khi tạo ứng dụng trên Windows thông thường.

Tự động gợi ý các gói của NuGet

Khi viết code, chúng ta thường sử dụng các thư viện hệ thống, có thể đã được cài đặt qua Nuget hoặc chưa Nếu gói thư viện chưa được cài đặt, chúng ta cần tìm kiếm trên Internet để xác định gói cần thiết cho chương trình Ví dụ, khi sử dụng lớp DbContext, chúng ta phải biết gói thư viện nào cần cài đặt vào hệ thống.

In Visual Studio 2019, the system can automatically suggest extension packages by utilizing class or interface names To enable this feature, navigate to Tools > Options > Text Editor > C# > Advanced.

Giới thiệu giao diện website

3.3.1 Giao diện chấm công, tính lương

Hình 3.1: Giao diện tính lương

Hình 3.2: Giao diện chấm công

3.3.2 Giao diện đăng nhập, trang người dùng

Hình 3.3: Giao diện trang đăng nhập

Hình 3.4: Giao diện trang người dùng

3.3.3 Giao diện trang quản lý nhân viên

Hình 3.5: Giao diện quản lý nhân viên

Kết quả đạt được ở chương 3:

Visual Studio 2019 là một IDE hiện đại, hứa hẹn mang lại nhiều cơ hội cho việc phát triển ứng dụng quản lý.

-Đề tài được xây dựng dựa vào các kiến thức cơ bản về nghiệp vụ kết hợp với công nghệ hiện có trong ngôn ngữ.

 Công nghệ sử dụng: ASP.NET MVC5, bootstrap 4

 Ngôn ngữ lập trình: C#, JS

-Lưu trữ dữ liệu: MS SQL Server 2017.

-Các giao diện của website.

Ngày đăng: 14/06/2023, 15:21

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w