Chapter 3
Chapter 3
Problem definition
Identifying current trends in the online auction market, including popular categories of items, pricing
strategies, and competitive platforms.
Gathering information about what features and functionalities users are looking for in an online auction
system, including ease of use, bidding mechanisms, and payment options.
Ans: There is a growing demand for Auctions in our daily life and there is no site for small area seller to
grow their business.
Overall Problem
The overall problem revolves around designing and implementing an online auction system that facilitates the
buying and selling of items through a digital platform. The goal is to create a user-friendly system that ensures
transparency, security, and efficiency in the auction process. This involves addressing various challenges such as
user management, bidding processes, item listing, and payment handling.
Sub-Problems
1. User Registration and Authentication
o Definition: Implement a secure user registration and login system that verifies user identities and
manages user profiles.
o Definition: Develop a system for sellers to create and manage auction listings, including item
details and auction parameters.
3. Bidding Mechanism
o Definition: Create a dynamic bidding system that allows users to place bids, view current bids,
and receive notifications.
4. Payment Processing
o Definition: Implement a secure payment gateway to facilitate transactions between buyers and
sellers after the auction ends.
o Definition: Develop a system for users to provide feedback on transactions and rate other users,
fostering trust in the marketplace.
o Definition: Implement a search and filtering system that allows users to easily find relevant
auctions based on various criteria.
o Definition: Create a support system for users to resolve disputes and report issues related to
auctions.
Requirements Specification for Online Auction System
In this phase, we will outline the functional and non-functional requirements for the online auction system, as
well as identify the operations and problems of existing systems.
Functional Requirements
o Users must be able to create an account by providing their email, username, and password.
o Users should be able to view and edit their profiles, including personal information and payment
details.
o Users must be able to view their auction history (both bids and listings).
o Sellers must be able to create new auction listings by providing item details (title, description,
images, starting price, and auction duration).
o Sellers should be able to edit or remove their listings before the auction starts.
4. Bidding Mechanism
o The system should display current highest bids and notify users when they are outbid.
5. Payment Processing
o The system must allow buyers to securely process payments after winning an auction.
o Users must be able to leave feedback and rate other users after transactions.
o The system should display user ratings and feedback on their profiles.
o The system should provide filters for categories, price ranges, and auction status.
o Users should be able to sort search results by various criteria (e.g., ending soonest, highest bid).
8. Dispute Resolution and Support System
o The design should be responsive to support various devices (desktop, tablet, mobile).
2. Performance
o The system must manage concurrent users without significant degradation in response times.
3. Security
o The payment process must comply with relevant security standards (e.g., PCI-DSS).
4. Scalability
o The system should be able to accommodate a growing number of users and auctions without
requiring significant rework.
5. Reliability
o The system must be available 99.9% of the time, with minimal downtime for maintenance.
Existing online auction platforms typically allow users to create accounts, list items for auction, place
bids, and process payments.
Most systems provide basic search and filtering capabilities and have some form of user feedback
mechanisms.
o Many existing systems have cluttered interfaces that can overwhelm users.
o Navigation can be unintuitive, making it difficult for users to find auctions or manage their
accounts.
2. Security Vulnerabilities
o Some systems may not adequately protect user data or secure payment transactions, leading to
potential breaches.
o Users often experience delays in bid updates, leading to confusion and frustration.
o Some platforms do not notify users promptly when they are outbid.
o Existing systems may lack effective support channels, making it difficult for users to resolve
issues.
5. Poor Scalability
o Many systems struggle to handle a large number of simultaneous users, leading to slow
performance during peak times.
o Some platforms do not provide a mobile-optimized experience, limiting accessibility for users on
smartphones or tablets.
Planning and Scheduling for Online Auction System
Task Breakdown
To effectively plan and schedule the development of the online auction system, we first break down the project
into smaller, manageable tasks. Here is a high-level list of tasks along with their dependencies:
1. Project Initialization
o Identify stakeholders.
5. Bidding Mechanism
6. Payment Processing
Resource Constraints: Availability of team members, budget limitations, and technology stack
constraints may affect the scheduling of tasks.
Quality Constraints: Each task must adhere to quality standards, which may require additional time for
testing and revisions.
Gantt Chart
A Gantt chart provides a visual representation of the project timeline and the schedule of tasks. Here is a
simplified version of what the Gantt chart for the online auction system might look like:
User Registration
Week 3 Week 4 2 weeks Project Initialization
and Authentication
User Profile
Week 5 Week 6 2 weeks User Registration
Management
Auction Listing
Week 7 Week 8 2 weeks User Profile
Management
Optimistic Time (O): The minimum possible time to complete the task.
Pessimistic Time (P): The maximum possible time to complete the task.
Most Likely Time (M): The most realistic time to complete the task.
o RAM: 16 GB (minimum)
o Storage:
Additional HDD with at least 1 TB for backups and large data storage.
o Display: 1920 x 1080 resolution (minimum) for optimal coding and design experience.
o Input Devices: Standard keyboard and mouse, with optional ergonomic devices for comfort.
o RAM: 32 GB (minimum)
o Storage:
SSD with at least 512 GB for fast access to databases and application files.
Additional HDD with at least 2 TB for backups and storage of user data.
o Network Interface: Gigabit Ethernet for reliable and fast internet connectivity.
o Power Supply: Uninterruptible Power Supply (UPS) for backup power during outages.
Software Requirements
1. Operating System
o Development Machine:
o Server:
2. Web Server
o Frontend:
o Backend:
5. Development Tools
o IDE/Text Editor:
o CSS Frameworks:
o Authentication Libraries:
7. Monitoring Tools
User Management:
Auction Management:
o Real-time bidding system allowing users to place bids and receive notifications.
Payment Processing:
o Users should be able to search for items and filter results based on various criteria.
Feedback System:
o Users can log in, log out, and recover their passwords if forgotten.
o Sellers can create auction listings by providing details such as title, description, images,
starting price, and auction duration.
o Sellers can edit or delete their listings before the auction starts.
3. Bidding Mechanism
o The system updates the highest bid in real-time, allowing for competitive bidding.
o Notifications are sent to users when they are outbid or when the auction is about to close.
4. Payment Processing
o Filters are available to narrow results by categories, price ranges, and auction status.
o Sorting options allow users to find items based on different criteria (e.g., ending soonest,
highest bid).
o Users can leave feedback and rate their experience after each transaction.
o Ratings and reviews are displayed on user profiles, promoting trust and accountability.
7. Dispute Resolution and Support System
o Users can submit support tickets for any issues or disputes encountered during the auction
process.
o Users can access customer support through chat or email for additional assistance.
8. Admin Panel
o Analytics and reporting features help track system usage and performance metrics.
Conceptual Models for Online Auction System.
1. Use case diagram
A use case diagram is a visual representation of the interactions between users (or "actors") and a system,
illustrating the system's functionality from the users' perspective. In the context of an online auction system, the
use case diagram outlines how different actors interact with the system to perform specific tasks, known as use
cases.
2. Sequence Diagram
A sequence diagram is a type of interaction diagram in UML that shows how objects interact in a particular
scenario of a use case, representing the sequence of messages exchanged between them over time. In this, a
sequence diagram can illustrate how different components interact during specific processes, such as bidding on
an item or creating a new auction.
3. system sequence diagram (SSD)
A system sequence diagram (SSD) is a specific type of sequence diagram that focuses on the interactions
between a system and its external actors for a particular use case. It visually represents how a system responds to
messages from its users and outlines the sequence of events in a specific scenario. In the context of an online
auction system, the system sequence diagram can help clarify the interactions during key processes, such as
placing a bid or creating an auction.
4. Class diagram
A class diagram is a static structure diagram in UML (Unified Modelling Language) that describes the structure
of a system by showing its classes, their attributes, methods, and the relationships between them. In the context
of an online auction system, a class diagram can help visualize the various components of the system, their
attributes, and how they interact with each other.
5. Collaboration diagram
A collaboration diagram (also known as a communication diagram) is a type of UML (Unified Modelling
Language) diagram that shows how objects interact in a particular scenario, focusing on the relationships
between objects and the messages they exchange. Unlike sequence diagrams, which emphasize the timing of
messages, collaboration diagrams highlight the structural organization of the objects involved in the interaction.
6. ER diagram.
An Entity-Relationship (ER) diagram is a visual representation of the entities in a system and the
relationships between them. ER diagrams are commonly used in database design to illustrate the structure of
a database and how data is connected. In the context of an online auction system, an ER diagram helps in
understanding the various entities involved, their attributes, and the relationships among them, guiding the
development of the underlying database.
7. Deployment diagram
A deployment diagram is a type of UML (Unified Modelling Language) diagram that illustrates the
physical deployment of artifacts (software components, hardware devices, etc.) in a system. It represents how
software components are distributed across the hardware and how they communicate with each other. In the
context of an online auction system, a deployment diagram helps visualize the hardware and software
architecture, showing where each component resides and how they interact within the system's environment.
8. Activity Diagram
An activity diagram is a type of UML (Unified Modelling Language) diagram that represents the flow of control
or data in a system, illustrating the dynamic aspects of the system. It shows the sequence of activities, decisions,
and events that occur in a process. In the context of an online auction system, an activity diagram can help
visualize user interactions, system processes, and workflows involved in various tasks such as placing a bid,
creating an auction, or managing payments.