Đồ án OOAD - Phân tích và thiết kế hệ thống Website đấu giá trực tuyến

Tìm hiểu phân tích và thiết kế hướng đối tượng OOAD 3 với các khái niệm, phương pháp và kỹ thuật phát triển phần mềm chuyên nghiệp hiện đại.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

website

2024

214
0
0

Phí lưu trữ

55 Point

Tóm tắt

I. Tổng Quan Về OOAD 3 Phân Tích Và Thiết Kế Hướng Đối Tượng

OOAD 3 là một tài liệu học thuật toàn diện dành cho sinh viên ngành Công nghệ thông tin, đặc biệt tại Đại học Quốc gia Hà Nội. Tài liệu này được biên soạn bởi PGS. Trương Ninh Thuận với mã lớp INT3110, cung cấp kiến thức sâu sắc về phân tích và thiết kế hướng đối tượng. Nội dung tập trung vào một dự án thực tế là xây dựng hệ thống Auction Website - một nền tảng đấu giá trực tuyến hoàn chỉnh. Tài liệu bao gồm ba phần chính: yêu cầu hệ thống, phân tích hệ thống và thiết kế hệ thống, giúp sinh viên hiểu rõ quy trình phát triển phần mềm theo phương pháp hướng đối tượng.

1.1. Định Nghĩa Và Phạm Vi Của OOAD

OOAD (Object-Oriented Analysis and Design) là phương pháp phân tích và thiết kế phần mềm dựa trên các đối tượng (objects). Tài liệu này áp dụng OOAD vào bối cảnh thực tế, giúp sinh viên nắm vững các khái niệm cơ bản như lớp (class), đối tượng, kế thừa, đa hìnhcác mẫu thiết kế. Phạm vi của tài liệu bao quát từ giai đoạn thu thập yêu cầu cho đến triển khai cơ sở dữ liệu, tạo nền tảng vững chắc cho các dự án phần mềm lớn.

1.2. Mục Đích Của Tài Liệu

Mục đích chính của tài liệu OOAD 3 là giáo dục sinh viên về quy trình phát triển phần mềm chuyên nghiệp. Thông qua dự án Auction Website, sinh viên học cách phân tích yêu cầu, thiết kế hệ thống và hiện thực hóa các ca sử dụng (use cases). Tài liệu nhấn mạnh tầm quan trọng của sơ đồ UML, biểu đồ tuần tựthiết kế lớp trong việc xây dựng các ứng dụng có chất lượng cao.

II. Nội Dung Chính Của OOAD 3 Cấu Trúc Tài Liệu

Tài liệu OOAD 3 được chia thành ba phần chính, mỗi phần đóng vai trò quan trọng trong quá trình phát triển Auction Website. Phần thứ nhất là Yêu Cầu Hệ Thống Phần Mềm, nơi mô tả chi tiết các tính năng cần thiết của hệ thống. Phần thứ hai là Phân Tích Hệ Thống Phần Mềm, tập trung vào việc phân tích kiến trúc và hiện thực hóa các ca sử dụng. Phần thứ ba là Thiết Kế Hệ Thống Phần Mềm, trong đó xác định các thành phần thiết kế, thiết kế lớp chi tiết và thiết kế cơ sở dữ liệu. Cấu trúc này tuân theo quy trình OOAD chuẩn, giúp sinh viên nắm bắt toàn bộ vòng đời phát triển phần mềm.

2.1. Phần 1 Yêu Cầu Hệ Thống Phần Mềm

Phần này bắt đầu với mô tả vấn đề của hệ thống Auction Website, theo sau là bảng thuật ngữ định nghĩa các khái niệm chính. Tài liệu cung cấp sơ đồ ca sử dụng minh họa tất cả các tương tác giữa người dùng và hệ thống. Có 40+ ca sử dụng được liệt kê chi tiết, từ các chức năng cơ bản như Signup, Login, View product đến các chức năng phức tạp như Bid product, Create auctionAdmin management.

2.2. Phần 2 và 3 Phân Tích Và Thiết Kế Hệ Thống

Phần phân tích tập trung vào kiến trúc hệ thống, biểu đồ tuần tựkhung nhìn các lớp tham gia. Phần thiết kế bao gồm làm mịn kiến trúc, xác định thành phần thiết kếthiết kế ca sử dụng chi tiết. Tài liệu cung cấp 40+ thiết kế lớp tương ứng với mỗi ca sử dụng, cùng với thiết kế cơ sở dữ liệu toàn diện và tài liệu tham khảo để sinh viên tiếp tục học tập.

III. Các Ca Sử Dụng Chính Trong OOAD 3

Auction Website trong tài liệu OOAD 3 bao gồm nhiều ca sử dụng được chia thành ba nhóm chính: Ca sử dụng người dùng thông thường, Ca sử dụng người bánCa sử dụng quản trị viên. Nhóm người dùng thông thường bao gồm các chức năng như Signup, Login, View product, View auction, Search item, Like product, View notification, Chat, Bid product, Review seller. Nhóm người bán có thêm các chức năng như Seller register, Deposit money, Update seller profile, Create auction, Update auction, Create product. Nhóm quản trị viên có quyền truy cập toàn bộ dữ liệu và có thể phê duyệt sản phẩm, phê duyệt người bán, xem thống kê. Mỗi ca sử dụng được mô tả chi tiết với các bước thực hiện và các tình huống xử lý ngoại lệ.

3.1. Ca Sử Dụng Liên Quan Đến Xác Thực Và Quản Lý Tài Khoản

Các ca sử dụng xác thực bao gồm Signup (đăng ký tài khoản), Login (đăng nhập), Logout (đăng xuất) và Forgot password (quên mật khẩu). Ngoài ra có Update profile cho phép người dùng cập nhật thông tin cá nhân, và Seller register cho phép người dùng nâng cấp thành người bán. Những ca sử dụng này là nền tảng của bảo mật hệ thống và quản lý người dùng hiệu quả.

3.2. Ca Sử Dụng Liên Quan Đến Đấu Giá Và Sản Phẩm

Auction Website cung cấp các ca sử dụng về đấu giá như Bid product (đặt giá), Create auction (tạo đấu giá mới), Update auction (cập nhật đấu giá), View auction (xem chi tiết đấu giá). Ngoài ra còn có các ca sử dụng về sản phẩm như Create product, Update product, View product, Delete product, Search item. Những ca sử dụng này là trái tim của hệ thống, cho phép các giao dịch đấu giá diễn ra suôn sẻ.

IV. Ứng Dụng Và Giá Trị Học Tập Của OOAD 3

Tài liệu OOAD 3 cung cấp giá trị học tập vô cùng lớn cho sinh viên ngành Công nghệ thông tin. Thông qua dự án Auction Website thực tế, sinh viên học cách áp dụng các nguyên tắc OOAD vào các vấn đề thực tế. Tài liệu giúp sinh viên nắm vững các kỹ thuật mô hình hoá UML, bao gồm sơ đồ ca sử dụng, sơ đồ lớp, biểu đồ tuần tựsơ đồ thành phần. Ngoài ra, sinh viên cũng học cách phân tích yêu cầu, thiết kế kiến trúc hệ thốngtối ưu hóa thiết kế cơ sở dữ liệu. Những kỹ năng này là cơ sở vững chắc cho các dự án phần mềm chuyên nghiệp trong tương lai.

4.1. Phương Pháp Học Tập Hiệu Quả Từ OOAD 3

Để học tập hiệu quả từ tài liệu OOAD 3, sinh viên nên đọc kỹ từng phần, bắt đầu từ yêu cầu hệ thống, sau đó phân tích ca sử dụng, tiếp theo nghiên cứu thiết kế lớp chi tiết. Sinh viên nên vẽ lại các sơ đồ UML để hiểu rõ hơn, và thực hiện từng ca sử dụng trên biểu đồ tuần tự. Cuối cùng, sinh viên nên áp dụng kiến thức vào các dự án nhỏ để consolidate những gì đã học.

4.2. Ứng Dụng Thực Tế Của OOAD 3 Trong Công Việc

Kiến thức từ OOAD 3 có thể được áp dụng trực tiếp vào các dự án phần mềm thực tế. Kỹ năng phân tích ca sử dụng giúp developers hiểu rõ yêu cầu người dùng. Thiết kế lớp giúp xây dựng code có cấu trúc tốt. Thiết kế cơ sở dữ liệu đảm bảo hiệu năng hệ thống. Ngoài ra, việc sử dụng UML giúp giao tiếp tốt hơn với các stakeholdersteam members.

18/12/2025

Trích đoạn nội dung tài liệu

Chương 1 Yêu cầu hệ thống phần mềm 1.1 Mô tả vấn đề Trong thời đại hiện đại, nhu cầu sưu tập và trao đổi cổ vật đã trở nên phổ biến hơn bao giờ hết. Người yêu thích cổ vật không chỉ muốn sở hữu những món đồ mang giá trị lịch sử và nghệ thuật mà còn muốn tham gia vào cộng đồng sưu tập để trao đổi, mua bán và chia sẻ kiến thức. Tuy nhiên, việc tham gia vào các sàn đấu giá trực tuyến để mua bán cổ vật còn đặt ra nhiều thách thức. Để giải quyết vấn đề này, chúng em đã quyết định xây dựng một website đấu giá cổ vật với mong muốn cung cấp một nền tảng trực tuyến an toàn và tiện lợi cho các nhà sưu tập và người tham gia mua bán cổ vật.

- Thiếu nền tảng đáng tin cậy: Hiện nay, việc tìm kiếm cửa hàng địa phương hoặc tham gia vào các sàn đấu giá truyền thống có thể là một thách thức đối với những người muốn mua bán cổ vật. Đôi khi, sự đáng tin cậy của người bán và chất lượng của sản phẩm cũng gây ra nghi ngờ. - Thiếu tiện ích và tính tương tác: Các sàn đấu giá truyền thống thường có hạn chế về tính tương tác và tiện ích, không cung cấp đủ thông tin và tiện nghi để người dùng có thể tham gia mua bán cổ vật một cách thuận tiện và an toàn. - Thách thức trong việc xác thực và quản lý thông tin: Việc xác thực danh tính và quản lý thông tin cá nhân của người dùng là một vấn đề quan trọng trong việc xây dựng một nền tảng đấu giá cổ vật an toàn và đáng tin cậy.2 Giải pháp Auction là một website được xây dựng với mục đích cung cấp một nền tảng đấu giá trực tuyến chuyên nghiệp và đáng tin cậy cho những người yêu thích sưu tập và trao đổi cổ vật.

Auction đem lại trải nghiệm mua bán cổ vật thuận lợi và an toàn cho người dùng. Để thực hiện điều này, chúng em sẽ tích hợp các tính năng và công nghệ tiên tiến như:. Auction cũng sẽ cung cấp các công cụ tìm kiếm và lọc thông minh để giúp người dùng dễ dàng tìm kiếm và lựa chọn các mục đấu giá phù hợp với sở thích và ngân sách của họ. Đồng thời, chúng em sẽ hỗ trợ đa phương thức thanh toán an toàn và tiện lợi, cũng như cung cấp dịch vụ giao hàng và bảo hiểm để đảm bảo rằng mọi giao dịch diễn ra một cách trơn tru và đáng tin cậy.1 Miêu tả Website được chia làm hai phía: phía Khách hàng và phía Quản trị viên.

Khách hàng (bao gồm Visitors, Users, Sellers) có thể tương tác với website thông qua PC, laptop, điện thoại hoặc máy tính bảng, trong khi đó phía Quản trị viên (Administrators) được thiết kế giao diện web riêng. Khách hàng và quản trị viên có thể truy cập mọi lúc, mọi nơi chỉ cần có kết nối với mạng Internet Khách hàng có thể đăng ký tài khoản và đăng nhập vào hệ thống để thực hiện các chức năng liên quan đến đấu giá cổ vật theo nhu cầu. Quản trị viên có thể đăng nhập vào hệ thống để theo dõi và quản lý toàn bộ những gì liên quan đến khách hàng, cổ vật và những gì liên quan đến đấu giá cổ vật. Phần mềm có ngôn ngữ chính là Tiếng Anh.2 Người dùng cuối Hệ thống có những người sử dụng cuối sau: - Users và Visitors: Users và Visitors có thể sử dụng một vài chức năng của website mà không cần đăng nhập như xem thông tin chi tiết về các sản phẩm đấu giá, các phiên đấu giá hay thông tin về những nhà đấu giá cổ vật (sellers), tìm kiếm các sản phẩm, phiên đấu giá theo mà mình quan tâm,.

Visitor có thể đăng ký tài khoản để sử dụng các chức năng của User như đấu giá sản phẩm, nhắn tin, nhận thông báo, thanh toán khi mua hàng, hoặc đăng ký làm người bán,.vv 2 - Sellers: Ngoài việc có thể sử dụng các chức năng như User và Visitor, Seller còn có thể dùng các chức năng chuyên biệt như quản lý sản phẩm đấu giá, các phiên đấu giá, mở phòng đấu giá,.vv - Administrators: Admin quản lý toàn bộ website thông qua giao diện riêng biệt, quản lý tài khoản User, Seller, và tất cả những gì liên quan đến đấu giá cổ vật như Product, Auction, Category,. Admin cũng có thể xem báo cáo thống kê giúp kiểm soát và vận hành website tốt hơn.2 Bảng thuật ngữ 1.1 Giới thiệu Tài liệu này được sử dụng để định nghĩa các thuật ngữ cụ thể trong lĩnh vực vấn đề, giải thích các thuật ngữ mà có thể không quen thuộc với người đọc các mô tả các trường hợp sử dụng hoặc tài liệu dự án khác. Thường, tài liệu này có thể được sử dụng như một từ điển dữ liệu không chính thức, ghi lại các định nghĩa dữ liệu để mô tả các trường hợp sử dụng và các tài liệu dự án khác có thể tập trung vào những gì hệ thống phải làm với thông tin.2 Định nghĩa Bảng chú giải chứa các định nghĩa cho các khái niệm chính được sử dụng trong Website. Visitor (Người dùng khách) - Là người sử dụng website, không có tài khoản của website.

Là người sử dụng các tính năng của website. Seller (Người bán) - Là người sử dụng website, có tài khoản của website, đã đăng ký làm người bán hàng. Là người sử dụng các tính năng của website với vai trò người bán cổ vật. User (Người dùng) - Là người sử dụng website, có tài khoản của website, không phải Seller.

Là người sử dụng các tính năng của website với vai trò người đấu giá (mua) cổ vật. 3 Admin (Quản trị viên) - Là người quản lý website, có khả năng xem báo cáo của website cũng như quản lý thông tin User, Seller và các thông tin liên quan đấu cổ vật, đấu giá cổ vật. Account (Tài khoản) - Bản ghi về User/Seller/Admin bao gồm các thông tin về họ tên, email, số điện thoại, địa chỉ, số tiền, .vv Mỗi tài khoản có một mã định danh (ID) duy nhất trong hệ thống. Mỗi tài khoản được định nghĩa một số quyền nhất định đối với các tác vụ trong hệ thống.

Product (Sản phẩm) - Là cổ vật được Seller tạo yêu cầu bán và được Admin xét duyệt. Có thể tạo sự chú ý, mua sắm nhằm thỏa mãn nhu cầu hay ước muốn người dùng. Auction (Đấu giá) - Là phiên đấu giá được Seller tạo. Phiên đấu giá sẽ diễn ra cuộc trao đổi đấu giá cổ vật giữa những người tham gia phiên đấu giá, phiên đấu giá có thể public(ai cũng có thể tham gia) hoặc private (chỉ những người được mời mới có thể tham gia).

Các sản phẩm đấu giá trong phiên đấu giá phải được xét duyệt bởi Admin khi Seller tạo yêu cầu mở phiên đấu giá. Bid (Trả giá) - Là đề xuất giá tiền mà một người tham gia đấu giá đưa ra để mua cổ vật trong phiên đấu giá. Khi một người tham gia đấu giá đặt một bid, họ đề xuất trả một số tiền cụ thể cho cổ vật, và họ phải có đủ số tiền đó trong tài khoản. Người có bid cao nhất sẽ trở thành người thắng và khi phiên đấu giá kết thúc sẽ có quyền mua cổ vật đó với giá tiền họ đã đặt.

Category (Thể loại) - Một nhóm các sản phẩm đấu giá có nhiều điểm tương đồng về hình dáng, xuất xứ sẽ có cùng một thể loại. Location (Địa chỉ) - Thông tin vị trí của một đối tượng như User, Seller, bao gồm toạ độ, địa chỉ cụ thể, địa chỉ thành phố, địa chỉ quốc gia của chúng. 4 Streaming (Trực tiếp) - Lưu lại thông tin về các buổi phát trực tiếp (livestream) trong các buổi đấu giá. Chat (Nhắn tin) - Bao gồm các tin nhắn trao đổi giữa người dùng với người dùng, người dùng với quản trị viên.

Review (Đánh giá, phản hồi) - Bản ghi về nhận xét của người dùng về sau khi người dùng hoàn thành đơn hàng. Notification (Thông báo) - Là thông báo gửi cho người dùng sau khi có một sự kiện nào đó xảy ra. Payment (Thanh toán) - Là phương thức thanh toán người dùng dùng để nạp tiền, rút tiền, thực hiện các phiên giao dịch. Statistics (Thống kê) - Quá trình thu thập, tổng hợp, trình bày số liệu, tính toán các đặc trưng của đối tượng nhằm phục vụ cho quá trình phân tích, dự đoán và đề ra các quyết định.3 Đặc tả bổ sung Mục tiêu - Mục tiêu của tài liệu này là định nghĩa các yêu cầu của hệ thống đấu giá cổ vật.

Đặc tả bổ sung này liệt kê các yêu cầu không được mô tả trong các ca sử dụng trong sơ đồ ca sử dụng. Đặc tả bổ sung cùng với mô hình ca sử dụng mô tả một cách đầy đủ các ràng buộc cũng như các yêu cầu của khách hàng đối với hệ thống, đây cũng là tài liệu được cấp cho khách hàng phê duyệt và làm tài liệu tham khảo cho việc thiết kế, triển khai và kiểm thử hệ thống. Phạm vi 5 - Những thông số bổ sung này áp dụng cho hệ thống Đấu giá. Các thông số này xác định các yêu cầu phi chức năng của hệ thống như độ tin cậy, khả năng sử dụng, hiệu suất và khả năng hỗ trợ, cũng như các yêu cầu chức năng chung cho một số trường hợp sử dụng.

Chức năng - Nhiều người dùng có thể thực hiện các nhiệm vụ của họ đồng thời. Khả năng sử dụng - Để hệ thống có thể dễ dàng sử dụng đối với người dùng, cần phải đáp ứng một số tiêu chí dưới đây: - Phần mềm phải dễ sử dụng để người dùng mới có thể học cách sử dụng hệ thống trong vòng 15 phút. - Giao diện người dùng phải thân thiện và dễ hiểu - Một người dùng thông thường có thể ghi nhớ và làm quen với giao diện của phần mềm chỉ sau một đến hai lần sử dụng và thực hiện các thao tác trên hệ thống. Hiệu suất - Thời gian phản hồi cho các thao tác trên hệ thống cần phải nhỏ hơn 1 giây.

Khả năng hỗ trợ - Không có Bảo mật - Hệ thống phải năng chặn người dùng đăng nhập vào hệ thống và không có mật khẩu hoặc sử dụng sai mật khẩu. Các thông tin về mật khẩu phải được mã hóa ở phía người dùng trước khi gửi đến hệ thống. - Chỉ có tài khoản quản trị viên có khả năng quản lý tài khoản khách hàng, những gì liên quan đến cố vật, phiên đấu giá cổ vật và xem báo cáo hệ thống. - Thông tin khách hàng phải được bảo mật và không thể bị tấn công từ các tác nhân bên ngoài.

Độ tin cậy - Hệ thống phải hoạt động 24/7. Thời gian downtime phải dưới 5%.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ