WEBSITE BÁN HÀNG C#
DHKTPM13B – NHÓM12
TÀI LIỆU KIẾN TRÚC THIẾT KẾ PHẦN MỀM – V1.0
TP HỒ CHÍ MINH, THÁNG 1 NĂM 2020
MƠN KIẾN TRÚC VÀ THIẾT KẾ PHẦN MỀM
Bộ mơn Kỹ thuật phần mềm – Khoa Công nghệ thông tin – ĐH Công nghiệp TP. HCM
LỊCH SỬ THAY ĐỔI (REVISION HISTORY)
Ngày
12/05/2020
12/05/2020
15/05/2020
25/05/2020
15/6/2020
15/6/2020
15/6/2020
17/6/2020
01/07/2020
Phiên bản
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
1.0
Mô tả
Tạo tài liệu
Xác định các yêu cầu chức năng
Làm hết phần giới thiệu
Hoàn thành ràng buộc đánh giá
Hoàn thành kịch bản, Usecase
Hoàn thành ProcessView
Hồn thành LogicalView
Hồn thành Data View
Hồn thiện cịn lại
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Người hiện thực
Hồ Sỹ Tuấn Anh
Tất cả thành viên trong nhóm
Tất cả thành viên trong nhóm
Tất cả thành viên trong nhóm
Hồ Sỹ Tuấn Anh
Hồng Văn Tâm
Lê Thơng
Lê Thơng
Tất cả thành viên trong nhóm
Trang 1
MỤC LỤC
1. GIỚI THIỆU........................................................................................................................... 3
1.1
Tổng quan.......................................................................................................................... 3
1.2
Mục tiêu............................................................................................................................. 3
1.3
Phạm vi.............................................................................................................................. 3
1.4
Các định nghĩa, thuật ngữ, từ viết tắt..................................................................................3
1.5
Tài liệu tham khảo.............................................................................................................. 3
2. CÁC RÀNG BUỘC ĐÁNH GIÁ CHẤT LƯỢNG KIẾN TRÚC PHẦN MỀM.................4
2.1
Nền tảng kỹ thuật...............................................................................................................4
2.2
Bảo mật.............................................................................................................................. 4
2.3
Độ tin cậy/Tính sẵn sàng (Reliability/Availability)............................................................4
2.4
Tồn vẹn dữ liệu (Data Persistence)...................................................................................4
2.5
Các cơng cụ phát triển kiến trúc.........................................................................................4
3. MÔ TẢ KIẾN TRÚC.............................................................................................................. 5
3.1
Kịch bản............................................................................................................................. 5
3.2
Logical view....................................................................................................................... 6
3.3
Process view....................................................................................................................... 6
3.4
Implementation view..........................................................................................................6
3.5
Deployment view...............................................................................................................6
3.6
Data view........................................................................................................................... 6
4. CÁC RỦI RO (RISKS)...........................................................................................................7
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 2
1.
GIỚI THIỆU
1.1
Tổng quan
Ngày nay với sự phát triển hiện đại của khoa học công nghệ, sự phổ biến của mạng internet,
chúng ta truy cập internet hàng ngày hằng giờ . Cũng vì lẽ đó , những nhà kinh doanh đã
dựa vào mạng internet để phát triển việc buôn bán của mình. Và bán hàng thơng qua các
website là một sự lựa chọn đã mang lại tiềm năng vô cùng lớn cho các doanh nghiệp , các
cá nhân kinh doanh. Vậy tại sao chúng ta lại nói nó tiềm năng ? Câu trả lời là vì nó tiết kiệm
chi phí cho người bán , tiết kiệm thời gian cho người mua , người mua chỉ cần lên mạng tìm
kiếm và chỉ cần một cái click chuột thay vì pải đến tận nơi để xem và mua. Thực tế chứng
minh , hiện nay có rất nhiều website bán hàng , và chúng mang về một doanh thu lớn và ổn
định cho người bán hàng.
Và quá trình để thiết kế một website bán hàng ra sao là chủ đề mà nhóm chúng em sẽ nghiên
cứu và thực hiện.
Các chức năng của website cho từng thành phần tham gia vào website :
Quản trị viên:
Đăng nhập vào website: Quản trị viên đăng nhập vào website mới thực hiện
được các chức năng khác.
Cập nhật thông tin sản phẩm: Quản trị viên thực hiện thêm, sửa, xóa các sản
phẩm rồi cập nhật lên website.
Quản lý đơn hàng: Quản trị viên nhận thông báo đơn đặt hàng của khách hàng,
xét duyệt các đơn hàng cho khách hàng.
Khách hàng:
Đăng nhập vào website: Khách hàng đăng nhập vào website để thanh toán đơn
hàng.
Đăng kí thành viên: Khách hàng đăng kí thành viên để đăng nhập vào website.
Cập nhật thông tin cá nhân: Khách hàng cập nhật thơng tin cá nhân.
Tìm kiếm sản phẩm: khách hàng tìm kiếm sản phẩm cần tìm.
Thêm sản phẩm vào giỏ: Khách hàng thêm sản phẩm muốn mua vào giỏ hàng.
Thanh toán: Khách hàng thanh tốn các sản phẩm có trong giỏ hàng.
Xem chi tiết sản phẩm: Khách hàng xem chi tiết sản phẩm.
-Phần mềm sử dụng kiến trúc n-tier và giao diện web với nhiều ưu điểm :
Tính bảo mật cao: Ưu điểm nổi bật nhất cảu kiến trúc N – Tier là tính bảo mật
rất cao, bạn có thể bảo mật riêng cho 3 lớp, hạn chế các rủi ro.
Dễ dàng quản lý: Do là 3 tầng khác nhau, có thể tách biệt nên việc quản lý cũng
trở nên đơn giản, dễ dàng hơn nhiều. Nếu trường hợp một tầng bị lỗi thì cũng khơng làm
ảnh hưởng đến các tầng con lại, hồn tồn có thể sửa lỗi riêng biệt.
Có thể mở rộng: Bạn cũng có thể dễ dàng thêm vào đo nhiều tài nguyên, việc
thêm tài nguyên của một tầng không làm ảnh hưởng đến các tầng khác.
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 3
Linh hoạt: Bạn có thể linh hoạt thêm tài nguyên vào từng tầng, sửa lỗi của từng
tầng phù hợp với yêu cầu đặt ra.
Phát triển hiệu quả, có thể sử dụng lại: khi sử dụng kiến trúc N – Tier, bạn có thể
sử dụng lại từng tầng vì giữa chúng có sự phân chia độc lập.
1.2
Mục tiêu
Tài liệu kiến trúc này sử dụng mơ hình n-tier và giao diện web :
Tài liệu này này sẽ cung cấp cho người dùng , người thiết kế một cái nhìn bao quát về hệ
thống. Cung cấp cho người đọc một cái nhìn đầy đủ và toàn diện về ứng dụng, các chức
năng của ứng dụng. Bên cạnh đó nó cịn làm rõ các tác nhân tác động và hệ thống, các ràng
buộc dữ liệu để từ đó hỗ trợ cho việc viết code dễ dàng hơn.
Tài liệu kiến trúc này sử dụng mơ hình n-tier và giao diện web, trình bày về kiến trúc được
sử dụng để thiết kế phần mềm và các ràng buộc kiến trúc , đánh giá về độ bảo mật , tin cậy
của hệ thống. Ngoài ra tài liệu cịn đánh gia các rủi ro có thể xảy ra với hệ thống websiti
bán hàng.
1.3
Phạm vi
Tài liệu kiến trúc và thiết kế phần mềm này mô tả kiến trúc của website bán hàng và dùng cho
môn học Kiến trúc thiết kế phần mềm ngành Kỹ thuật phần mềm năm thứ 3, có thể áp dụng trong
đồ án tốt nghiệp.
Đối tượng người dùng ứng dụng bao gồm người người bán hàng có thể nhiều hoặc ít tùy vào đối
tượng là cơng ty hay cá nhân. Bên cạnh đó website cho phép các khách hàng truy cập từ các máy
tính khác kết nối truy cập vào hệ thống và sử dụng các dịch vụ có trên website.
1.4
Tài liệu tham khảo
[1]. Philippe Kruchten. The “4+1” view model of software architecture. 1995
( />df)
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 4
[2]. Jean-Louis Maréchaux . Developing a J2EE Architecture with Rational Software Architect
using the Rational Unified Process®, IBM DeveloperWorks, , Mars 2005, />
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 5
2.
2.1
CÁC RÀNG BUỘC ĐÁNH GIÁ CHẤT LƯỢNG KIẾN TRÚC PHẦN MỀM
Nền tảng kỹ thuật
Phía Server:
Phần mềm (ứng dụng/website) XX được lưu trữ tại máy chủ dùng GlassFish Server v5.
Website sử dụng SQL Server để lưu trữ các dữ liệu liên quan.
Tất cả giao tiếp với khách hàng của phần mềm XX sử dụng các tiêu chuẩn giao thức
TCP/IP, HTTP, HTTPS.
Phía Client:
Khách hàng/người dùng sẽ sử dụng trình duyệt Web Mozilla Firefox, Internet Explorer,
Google Chrome để truy cập vào website.
Khách hàng sử dụng thiết bị di động hệ điều hành iOS/Android cũng có thể truy cập được
qua các cơng cụ tìm kiếm Google.
2.2
Bảo mật
-Hệ thống sử dụng tài khoản đăng nhập để để đăng nhập .Mỗi khách hàng , mỗi nhân viên
sẽ có một tài khoản riêng để sử dụng các dich vụ trên website.
- Bên cạnh đó hệ thống cũng giúp người dùng phân cấp . Nhân viên quản lí sẽ có tài khoản
với các chức năng riêng , và khách hàng cũng sẽ chỉ được sử dụng những chức năng riêng
của khách hàng.Điều này giúp cho việc quản lý trang web đơn giản hơn nhiều. Giảm chi
phí về thời gian.
2.3
Độ tin cậy/Tính sẵn sàng (Reliability/Availability)
Độ tin cậy của website :
+ Dữ liệu đơn hàng của khách hàng khi đến người quản lý thì phải đảm bảo chính xác
+ Thơng tin sản phẩm khi đưa lên website phải chính xác và đầy đủ
+ Thời gian xử lí các chức năng của ứng dụng phải đạt yêu cầu , đảm bảo sự hài lòng
cho khách hàng khi sử dụng website.
Tính sẵn sàng :
+ Dữ liệu khách hàng , dữ liệu sản phẩm … sẽ được lưu trữ và cập nhật trực tiếp trên
server đảm bảo sẽ khơng bị mất đi khi có sự cố xảy ra.
+ Sau khi khách hàng đã đặt hàng,đơn hàng của khách sẽ đảm bảo được cập nhật nếu
có sự cố về kết nối internet.
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 6
2.4
Toàn vẹn dữ liệu (Data Persistence)
Dữ liệu đơn hàng của khách hàng khi chuyển về cho người quản lí thì được bảo đảm
chính xác.
Đơn hàng cảu khách hàng được cập nhật lại trạng thái ngay sau khi thanh tốn thành
cơng.
Sau mỗi lần cập nhật lại thơng tin về tài khoản, thông tin về sản phẩm hệ thống phải
lưu trữ lại những thông tin đã cập nhật.
2.5
Các công cụ phát triển kiến trúc
Một số công cụ được sử dụng khi phát triển tài liệu :
Phần mềm thiết kế các sơ đồ UML các Sơ đồ Class, sơ đồ cơ sở dữ liệu draw.io
Phần mềm soạn thảo văn bản Word 2016
Cơng cụ lập trình C# ( .Net framewwork.)
Phần mềm SQL Server 2012 dùng để lưu trữ và truy xuất dữ liệu cảu ứng dụng
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 7
3.
MƠ TẢ KIẾN TRÚC
Hình 2-1. Khung nhìn 4 + 1 [1]
Hình 2-2. Kiến trúc N-Tier cho hệ thống [2]
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 8
3.1
Kịch bản
Use case tổng quát
Bảng danh sách Usecase của hệ thống :
ID
Tên Use case
Mô tả ngắn gọn Use case
Chức năng
UC001
Dang Ki
Người dùng đăng kí tài
khoản mới
Đăng Kí
UC002
Dang Nhap
Người dùng đăng nhập vào
website
Đăng nhập
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Ghi chú
Trang 9
UC003
Cap Nhat Thong
Tin
Người dùng cập nhật thông
tin cá nhân
Cập nhật thơng
tin
UC004
Xem San Pham
Người dùng xem sản phẩm
có trên website
Xem sản phẩm
UC005
Tim Kiem San
Pham
Người dùng tìm kiếm sản
phẩm trong website
Tìm kiếm sản
phẩm
UC006
Them San Pham
Vao Gio Hang
Người dùng thêm sản phẩm
đã chọn vào giỏ hàng
Thêm sản phẩm
vào giỏ hàng
UC007
Thanh Toan
Người dùng thanh toán sản
phẩm
Thanh toán
UC008
Cap Nhat San
Pham
Quản trị viên cập nhật sản
phẩm
Cập nhật sản
phẩm
UC009
Quan Ly Don Hang
Quản trị viên quản lý các
đơn hàng đã đặt
Quản lý đơn
hàng
Bảng 2-1. Danh sách các tình huống hoạt động của ứng dụng
Đặc tả Use case Đăng kí:
Mã Usecase
Tên UC
UC00
1
DangKyTaiKhoan
Mơ tả
Người dùng đăng kí thành viên của website
Actor
Khach Hang, Quan Tri Vien
Tiền điều kiện
Người dùng phải có kết nối internet
Người dùng chọn chức năng đăng kí
Hậu điều kiện
Luồng sự kiện chính
Luồng sự kiện phụ
Người dùng đăng kí thành cơng
1.
2.
3.
4.
5.
6.
Hệ thống hiển thị màn hình đăng kí.
Người dùng nhập thơng tin để đăng kí.
Hệ thống kiểm tra thơng tin đăng kí.
Hệ thống thêm tài khoản vào cơ sở dữ liệu.
Hệ thống thơng báo đăng kí thành cơng.
Kết thúc UC.
A1. Thông tin không hợp lệ: Khi người dùng nhập sai ràng buộc dữ liệu.
1. Hệ thống hiển thị lại màn hình đăng kí kèm theo lỗi.
2. Quay lại bước 2.
Đặc tả Use case Dang Nhap:
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 10
Tên UC
Dang Nhap
Mô tả
Người dùng đăng nhập vào hệ thống
Actor
Khach Hang, Quan Tri Vien
Tiền điều kiện
Người dùng ở màn hình trang chủ
Hậu điều kiện
Người dùng đăng nhập thành công.
Luồng sự kiện chính
Luồng sự kiện phụ
1.
2.
3.
4.
5.
Người dùng chọn đăng nhập
Hệ thống hiển thị màn hình đăng nhập.
Người dùng nhập thơng tin đăng nhập.
Hệ thống kiểm tra thông tin đăng nhập.
Nếu đúng thì hiển thị màn hình đăng nhập thành c.
A1. Sai thông tin đăng nhập: Khi người dùng nhập sai tên đăng nhập
hoặc mật khẩu.
5.1Hệ thống hiển thị lại màn hình đăng nhập kèm theo thông báo
nhập sai thông tin.
5.2Quay lại bước 2.
Đặc tả Use case Cap Nhat Thong Tin:
Tên UC
Cap Nhat Thong Tin
Mô tả
Người dùng cập nhật thông tin cá nhân
Actor
Khach Hang
Tiền điều kiện
Người dùng phải đăng nhập
Hậu điều kiện
Người dùng cập nhật thành cơng
Luồng sự kiện chính
1.
2.
3.
4.
Chon chức năng cập nhật thơng tin
Hiển thị màn hình cập nhật thông tin cá nhân.
Nhập thông tin cập nhật.
Hệ thống cập nhật thông tin.,thông báo cập nhật thành công.
Luồng sự kiện phụ
Đặc tả Use case Tim Kiem San Pham:
Tên UC
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Tim Kiem San Pham
Trang 11
Mơ tả
Người dùng tìm kiếm sản phẩm
Actor
Khach Hang
Tiền điều kiện
Khách hàng phải có kết nối internet
Hậu điều kiện
Khách hàng tìm được đúng như yêu cầu.
Luồng sự kiện chính
Luồng sự kiện phụ
1. Hiển thị khung tìm kiếm.
2. Người dùng nhập thơng tin cần tìm kiếm.
3. Hệ thống hiển thị kết quả tìm được
A1. Tìm khơng có dữ liệu: Khi hệ thống khơng có dữ liệu khách hàng
tìm kiếm.
1. Hệ thống hiển thị khơng tìm thấy.
2. Quay lại bước 2.
Đặc tả Use case Them San Pham Vao Gio Hang:
Tên UC
Them San Pham Vao Gio Hang
Mô tả
Khách hàng thêm sản phẩm vào giỏ hàng
Actor
Khach Hang
Tiền điều kiện
Khách hàng phải xem chi tiết sản phẩm.
Hậu điều kiện
Khách hàng thêm vào giỏ thành công
Luồng sự kiện chính
Luồng sự kiện phụ
1.
2.
3.
4.
Hệ thống hiển thị sản phẩm.
Khách hàng chọn số lượng cần mua.
Khách hàng click thêm vào giỏ hàng.
Hệ thống thông báo thêm thành công và cập nhật giỏ hàng.
A1. Hết hàng: Khi sản phẩm bị hết hàng.
1. Hệ thống hiển thị lại màn hình sản phẩm kèm theo thông báo hết
hàng.
2. Quay lại bước 1.
Đặc tả Use case Thanh Toan:
Tên UC
Thanh Toan
Mô tả
Khách hàng thanh toán đơn hàng
Actor
Khach Hang
Tiền điều kiện
Khách hàng đang xem giỏ hàng
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 12
Hậu điều kiện
Luồng sự kiện chính
Luồng sự kiện phụ
Khách hàng thanh tốn thành cơng
1.
2.
3.
4.
5.
6.
7.
Khách hàng chọn chức năng thanh tốn giỏ hàng.
Hệ thống hiển thị trang thanh toán.
Khách hàng chọn phương thức thanh tốn.
Khách hàng nhập thơng tin để thanh tốn.
Khách hàng xác nhận đặt hàng.
Hệ thống thơng báo đặt hàng thành công.
Kết thúc use case.
A1. Giỏ hàng rỗng: Khi chưa có sản phẩm nào trong giỏ hàng.
3. Hệ thống hiển thị lại màn hình giỏ hàng kèm theo thơng báo giỏ
hàng rỗng.
4. Quay lại bước 1.
Đặc tả Use case Cap Nhat San Pham:
Tên UC
Cap Nhat San Pham
Mô tả
Quản trị viên cập nhật sản phẩm
Actor
Quan Tri Vien
Tiền điều kiện
Quản trị viên phải đăng nhập vào hệ thống
Hậu điều kiện
Quản trị viên cập nhật sản phẩm thành công.
Luồng sự kiện chính
Luồng sự kiện phụ
1.
2.
3.
4.
5.
Quản trị viên chọn cập nhật sản phẩm.
Hệ thống hiển thị trang cập nhật sản phẩm.
Quản trị viên nhập thông tin cập nhật.
Hệ thống kiểm tra thông tin.
Nếu đúng thì thơng báo cập nhật thành cơng.
A1. Nhập sai thông tin: Khi Quản trị viên nhập sai thông tin.
1. Hệ thống hiển thị lại màn hình nhập thơng tinkèm theo thông báo
lỗi.
2. Quay lại bước 4.
Đặc tả Use case Quan Ly Don Hang:
Tên UC
Quan Ly Don Hang
Mô tả
Quản trị viên quản lý đơn hàng của khách hàng
Actor
Quan Tri Vien
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 13
Tiền điều kiện
Quản trị viên phải đăng nhập vào hệ thống.
Hậu điều kiện
Quản trị viên quản lý, tưởng tác với các đơn hàng thành cơng.
Luồng sự kiện chính
Luồng sự kiện phụ
3.2
1.
2.
3.
4.
Quản trị viên chọn xem danh sách đơn hàng
Hệ thống hiện thị danh sách đơn hàng
Quản trị viên chọn duyệt đơn hàng
Hệ thống thông báo thành công và cập nhật đơn hàng
3.1 Quản trị chọn Xóa đơn hàng
3.2 Hệ thống thông báo thành công và cập nhật
Logical view
Overview
Subsystems
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 14
Layering
Class diagram
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 15
3.3
Process view
Activity Diagram use case Dang Ki:
Sơ đồ Activity Câp Nhật Thông Tin
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 16
Activity Diagram use case Dang Nhap:
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 17
Activity Diagram use case Tim Kiem San Pham:
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 18
Activity Diagram use case Them San Pham Vao Gio Hang:
Activity Diagram use case Thanh Toan:
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 19
Activity Diagram use case Quan Ly Don Hang:
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 20
Sơ đồ sequence usecase Đăng kí tài khoản
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 21
Sơ đồ sequence usecase Cập nhật thông tin
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 22
Sơ đồ Sequence Đăng Nhập
Sơ đồ sequence usecase Tìm Kiếm Sản Phẩm
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 23
Sơ đồ sequence Thêm sản phẩm vào giỏ hàng :
Sơ đồ Sequence Thanh Toán
Tài liệu kiến trúc và thiết kế phần mềm – V1.0
Trang 24