LỜI NÓI ĐẦU
Ngày nay, thương mại điện tử đã trở nên hết sức phổ biến trong cuộc sống của chúng ta.Mua
sắm là một nhu cầu không thể thiếu của con người, nhưng không phải ai cũng có thời gian để mất
hàng giờ để đi mua món đồ mình ưa thích.Mua bán online chính là một giải pháp hữu hiệu để khắc
phục những vấn đề đó.
Vấn đề lớn nhất của việc mua bán online đó chính là chất lượng sản phẩm hay nói cách khác
là độ tin tưởng vào người bán.Và giờ đây, với sự phát triển vượt bậc về công nghệ, vấn đề đó đã được
giải quyết dễ dàng : Các trang web bán hàng online có uy tín lần lượt xuất hiện :
raovat.com,rongbay.com , chotot.com… là những trang web cực kì nổi tiếng và bạn có thể mua hay
bán bất cứ thứ gì trên đó.Thực sự, đó là một cơ hội cho những người muốn bán hàng nhưng chưa có
cửa hàng của riêng mình hay những người muốn mua hàng mà lại thiếu thời gian lựa chọn.
Trong khuôn khổ bài tập lớn môn lập trình nâng cao, nhóm em đã quyết định thiết kế một
website bán hàng online tương tự như các trang web trên nhưng ở một quy mô nhỏ hơn nhất
nhiều.Mục đích chính của nhóm là học thêm kiến thức mới cũng như thực hành lại những kĩ năng đã
học.do đó, sản phẩm cuối cùng có thể chưa được hoàn thiện.
DANH MỤC HÌNH VẼ
Hình 1: Biểu đồ hoạt động của hệ thống
Hình 2 : Biểu đồ hoạt động của hệ thống
Hình 3: Biểu đồ lớp
DANH MỤC BẢNG BIỂU
Bảng 1: Ca sử dụng đặt hàng
Bảng 2: Ca sử dụng tìm kiếm
Bảng 3: Ca sử dụng duy trì thông tin sản phẩm
Bảng 4: Ca sử dụng quảng cáo
Bảng 5: Ca sử dụng quản lý User
Bảng 6: Ca sử dụng kiểm tra
Bảng 7: Mối quan hệ giữa các ca sử dụng
Bảng 8: Thẻ CRC lớp Nhân viên
Bảng 9: Thẻ CRC lớp Customer
Bảng 10: Thẻ CRC lớp Đơn đặt hàng
Bảng 11: Thẻ CRC lớp Sản phẩm
nào đó thì sẽ sử dụng chức năng này
• Duy trì thông tin sản phẩm : luôn luôn duy trì thông tin sản phẩm để
người dùng có thể tra cứu một cách dễ dàng nhất
• Quảng cáo :
• Quản lý người dùng : quản lý những người sử dụng
Từ biểu đồ hoạt động trên ta sẽ xây dựng biểu đồ ca sử dụng
2.2 Biểu đồ ca sử dụng
2.2.1 Danh sách ca sử dụng
• Đặt hàng
• Tìm kiếm
• Duy trì thông tin sản phẩm
• Quảng cáo
• Quản lý thông tin người dùng
Ngoài ra còn có các ca sử dụng mở rộng như đăng nhập, đăng kí, kiểm tra
Hình 1: Biểu đồ hoạt động của hệ thống
2.2.2 Bảng mô tả ca sử dụng
Use case name: Đặt hàng ID: 01 Level: High
Primary actor:Khách hàng-Customer Use Case Type: Detail, essential
Stakaholders and Interests:
Khách hàng : thực hiên thao tác đặt hàng
Brief Description:
Ca sử dụng này mô tả việc đặt hàng
Trigger:
Khách hàng nhập thông tin vào menu đặt hàng
Relationships:
Association: Khách hàng
Include: Kiểm tra , Duy trì đơn hàng
Extend:
+ Tìm kiếm
Genaralization:
Use case name: Duy trì thông tin sản
phẩm
ID: 03 Level: High
Primary actor:DistributionSystem Use Case Type: Detail, essential
Stakaholders and Interests:
DistributionSystem: duy trì thông tin sản phẩm trên Web
Brief Description:
Ca sử dụng này mô tả việc duy trì thông tin sản phẩm trên Web
Trigger:
Khách hàng nhập thông tin vào menu đặt hàng
Relationships:
Association: Sản phẩm
Include:
Extend:
Genaralization:
Normal Flow of Events:
1. Hệ thống liên tục duy trì thông tin sản phẩm trên Web : sửa khi thay đổi.
thêm vào khi có sản phẩm mới
Subflows:
Alternate/Exception Flows:
Bảng 3: Ca sử dụng duy trì thông tin sản phẩm
Use case name: Quảng cáo ID: 04 Level: High
Primary actor:System Use Case Type: Detail, essential
Stakaholders and Interests:
AdvSystem : thực hiện việc quảng cáo
Brief Description:
Ca sử dụng này mô tả việc quảng cáo
Trigger:
Khách hàng nhập thông tin vào menu tìm kiếm
Relationships:
Use case name: Kiểm tra ID: 06 Level: High
Primary actor:System Use Case Type: Detail, essential
Stakaholders and Interests:
Hệ thống kiểm tra thông tin
Brief Description:
Ca sử dụng này mô tả việc hệ thống kiểm tra thông tin sản phẩm và người dùng
Trigger:
Hệ thống nhận thông tin yêu cầu đặt hàng của khách hàng
Relationships:
Association: Khách hàng
Include:
Extend:
Genaralization:
Normal Flow of Events:
1. Hệ thống tiến hành kiểm tra thông tin người dùng và sản phẩm
2. Hệ thống thông báo kết quả kiểm tra lại cho người dùng
Subflows:
Alternate/Exception Flows:
Bảng 6: Ca sử dụng kiểm tra
Tên ca sử dụng Tác nhân
Relationships
Extend Include
Đặt hàng Khách hàng Tìm kiếm Kiểm tra
Tìm kiếm Khách hàng
Duy trì thông tin
sản phẩm
Hệ thống
Quảng cáo Hệ thống
Quản lý thông tin
Sản phẩm
Astributes:
o ID
o Name
o Username
o Password
o Rule
o Status
Relationships:
Generalization (a kind of):
Aggregation (has parts):
Other Associations: sản phẩm
Bảng 8: Thẻ CRC lớp Nhân viên
Class Name:
Customer
ID: 02 Type: High
Description: mô tả thông tin và các hoạt động
của Custormer
Associated Use Case:
Đặt hàng
Quản lý User và Customer
Responsibilities
Đăng nhập vào hệ thống.
Đặt hàng
Tìm kiếm
Collaborator
Sản phẩm
Đơn đặt hàng
Astributes:
o ID
Other Associations: sản phẩm, khách hàng
Bảng 10: Thẻ CRC lớp Đơn đặt hàng
Class Name: Sản
phẩm
ID: 04 Type: High
Description: mô tả thông tin của sản phẩm
Associated Use Case:
Đặt hàng, Tìm kiếm
Responsibilities
Đưa thông tin đến khách hàng
Collaborat khách hàng, nhân viên, đơn đặt
hàng
Astributes:
o ID
o Name
o Detail
o Price
o Image
o Pricenew
o Date
o [Order]
o Status
o Group_ProductID
Relationships:
Generalization (a kind of):
Aggregation (has parts):
Other Associations: sản phẩm, khách hàng, đơn đặt hàng
Bảng 11: Thẻ CRC lớp Sản phẩm
Class Name: Nhóm
sản phẩm
Collaborator
Sản phẩm, đơn đặt hàng
Astributes:
o ID
o Name
o URL
o Width
o Height
o Link
o Target
o Position
o [Order]
o Status
Relationships:
Generalization (a kind of):
Aggregation (has parts):
Other Associations: sản phẩm, khách hàng
Bảng 13: Thẻ CRC lớp Quảng cáo
Class Name: Đơn
đặt hàng
ID: 07 Type: High
Description: mô tả thông tin của đơn đặt hàng
Associated Use Case:
Đặt hàng
Responsibilities
Thực hiện việc đặt hàng
Collaborator
Sản phẩm, khách hàng
Astributes:
o ID
UI Components:
là những phần tử chịu trách nhiệm thu thập và hiển thị thông tin cho người dùng cuối.
Trong ASP.NET thì những thành phần này có thể là các TextBox, các Button,
DataGrid…
UI Process Components:
là thành phần chịu trách nhiệm quản lý các qui trình chuyển đổi giữa các UI
Components. Ví dụ chịu trách nhiệm quản lý các màn hình nhập dữ liệu trong một
loạt các thao tác định trước như các bước trong một Wizard…
Lưu ý : Lớp này không nên sử dụng trực tiếp các dịch vụ của lớp Data Access mà nên
sử dụng thông qua các dịch vụ của lớp Business Logic vì khi sử dụng trực tiếp như
vậy, có thể bỏ qua các ràng buộc, các logic nghiệp vụ mà ứng dụng cần phải có.
2. Business Logic Layer
Lớp này thực hiện các nghiệp vụ chính của hệ thống, sử dụng các dịch vụ do lớp Data
Access cung cấp, và cung cấp các dịch vụ cho lớp Presentation. Lớp này cũng có thể
sử dụng các dịch vụ của các nhà cung cấp thứ 3 để thực hiện công việc của mình.
Trong lớp này có các thành phần chính là Business Components, Business
Entities và Service Interface.
Service Interface:
là giao diện lập trình mà lớp này cung cấp cho lớpPresentation sử dụng.
Lớp Presentation chỉ cần biết các dịch vụ thông qua giao diện này mà không cần phải
quan tâm đến bên trong lớp này được hiện thực như thế nào.
Business Entities:
là những thực thể mô tả những đối tượng thông tin mà hệ thống xử lý. Các Business
Entities này cũng được dùng để trao đổi thông tin giữa lớp Presentation và lớp Data
Layers.
Business Components:
Là những thành phần chính thực hiện các dịch vụ mà Service Interface cung cấp,
chịu trách nhiệm kiểm tra các ràng buộc logic (constraints), các qui tắc nghiệp vụ
(Business Rules), sử dụng các dịch vụ bên ngoài khác để thực hiện các yêu cầu của
ứng dụng.