project-proposal-2025

BookFlow Second-Hand Book Recycling and Trading Platform

Abstract

Have you ever wanted to clear out old books collecting dust on your shelf but struggled to find a buyer? Or wanted to buy affordable used textbooks but worried about fraud in private transactions? From expired listings on eBay to last-minute price hikes or canceled deals on Facebook, buying and selling secondhand books often involves trust and efficiency issues.

BookFlow is designed to solve these problems! It is a platform focused on secondhand book recycling and standardized trading. Sellers can easily sell unwanted books—just scan the ISBN, upload the book’s condition, and get a price estimate in a minute. Once the total reaches a certain amount, the platform arranges free pickup and delivery. For buyers, BookFlow offers fixed pricing, quality grading, and disinfection, which can ensure safe and worry-free transactions. Buy with ease, sell with confidence! By optimizing process design, the platform prioritizes availability (multi-device access), reliability (stable payment and order processing), and Extensibility.

Author

Name: Xiaoyu Ma
Student number: 48572714

Functionality

For Client

User sells books: upload book information (ISBN scanning, photo upload).

Users purchase books: Users can browse and filter books in library by category and price. Then place orders to complete their purchases. The platform should support multiple payment methods.

For platform

Purchase Management:The platform should Automatically evaluate books based on market price and condition when users upload the book information. And offers free pick-up service once the total value reaches a certain amount; otherwise, users must pay the shipping fee themselves.

Order Management: The platform should tracks the processes of book recycling and purchasing. Users can view their past book sales and purchases.

Book Management: The platform can review user-uploaded books to ensure they comply with the established guidelines.

Payment System: The platform should integrate third-party payment gateways to handle transactions and accounts.

Delivery Integration: The platform can integrate with courier companies’ APIs to automatically generate delivery orders.

Scope

The scope for the MVP of this system will include the features:

Quality Attributes

Availability

Availability is The software can be accessed on demand by end users, either at any time or on any platform, or both. In this platform, users should be able to create and update their user profiles, and smoothly complete the entire process of uploading and purchasing books.

Reliability

Reliability is the system’s ability to continuously provide correct functionality and maintain data consistency between users and the database under specified conditions, such as high concurrency or network fluctuations. Reliability is significant for this system because if a user’s payment is successful but the order status is not updated, or the book inventory is not reduced. It may lead to overselling, which can result in disputes between the user and the platform.

Extensibility

Extensibility is how the system can adapt to different numbers of concurrent requests or users. For BookFlow, the amount of users may increase over time, and the book library will also expand as more users join. This means the system should be able to support storing more user information and book library data.

Evaluation

Availability

Evaluate user profile creation and updates by testing real-time synchronization across different accounts. Then, test the book uploading and purchasing processes. The user success rate should meet a certain value. (e.g., 90% of users successfully complete their first upload).

Reliability

Testers can use JMeter to simulate high-concurrency payments at 200 transactions per second (TPS). Testers should monitor the payment success rate and system stability, recording both the success rate and timeout rate to ensure the system’s reliability. This ensures that users can carry out financial transactions safely.

Extensibility

The database’s capacity under stress can be evaluated by running load tests.Testers can gradually increase the amount of book and user data to observe changes in system response time. Such as Gradually import 50,000 book records, with API response time ≤ 500ms.