1.
INTRODUCTION
In the dynamic landscape of student life, where budgets are tight and sustainability is increasingly
paramount, Thriftly emerges as a beacon of innovation and empowerment. Thriftly is not just a
website; it's a transformative platform designed specifically to address the unique needs and
challenges of students in their academic journey.
At its core, Thriftly is a vibrant community-driven initiative focused on promoting sustainable
living among students. Through an intuitive and user-friendly interface, Thriftly facilitates the
seamless buying and selling of second hand items, transforming the way students acquire and
part with goods.
What sets Thriftly apart is its unwavering commitment to sustainability. By encouraging the
reuse and repurposing of items, Thriftly actively contributes to waste reduction and
environmental preservation. Every transaction on Thriftly is a step towards building a more eco-
conscious future for generations to come.
This synopsis explores the multifaceted dimensions of Thriftly, from its inception to its
operational framework and broader societal impact. By delving into the intricacies of Thriftly,
we uncover how it empowers students to embrace a lifestyle of conscious consumption while
fostering a sense of community and collaboration.
Join us on a journey through Thriftly, where sustainability meets student life. Discover how
Thriftly is revolutionizing the way students shop, sell, and live sustainably, one transaction at a
time.
Page | 1
2. REQUIREMENT GATHERING AND ANALYSIS
Requirement Gathering is the first and basic phase of software development life cycle. This
phase is essential for developing software. Requirements serve the detail description of
function that software should provide. Requirements specify need of client. Business analyst
and subject experts are responsible for requirement gathering process. This process shows
functions of software that need to provide for gaining client's needs.
2.1 Existing Problems and their solutions (proposed system)
2.1.1. Trust and Transparency:
o Problem: Users may be hesitant due to concerns about inaccurate product descriptions,
undisclosed damage, or unreliable sellers.
o Solution: this system Implement a robust rating and review system, provide detailed
product descriptions, and offer clear policies on returns and refunds.
2.1.2. Categorization Challenges:
o Problem: Managing diverse second-hand product categories can be challenging,
leading to difficulties in navigation and search.
o Solution: This system Develop a user-friendly interface with effective categorization,
filters, and search functionality to enhance the browsing experience.
2.1.3. Security Concerns:
o Problem: Security is a paramount concern, especially regarding payment transactions
and personal information.
o Solution: This system Implement secure payment gateways, ensure data encryption,
and educate users about the security measures in place to build confidence.
2.1.4. Quality Assurance:
o Problem: Buyers may worry about the quality of second-hand items, leading to
potential dissatisfaction.
o Solution: This system Encourage sellers to provide accurate information about the
condition of products, possibly with supporting images. Establish clear quality
standards and enforce them.
Page | 2
2.1.5. Seller Verification:
o Problem: Ensuring the reliability of sellers can be challenging, as buyers want to avoid
dealing with fraudulent or untrustworthy individuals.
o Solution: This system Implement a thorough seller verification process, possibly
including identity verification and background checks. Display seller ratings
prominently to guide users.
2.1.6. Communication and Negotiation:
o Problem: Communication challenges and negotiation complexities can hinder smooth
transactions.
o Solution: This system Provide a user-friendly messaging system, facilitate transparent
communication, and possibly integrate tools for fair price negotiation.
2.1.7. Logistical Issues:
o Problem: Coordinating logistics for second-hand items can be complex, leading to
delayed deliveries or damaged products.
o Solution: This system Collaborate with reliable shipping partners, provide tracking
options, and establish clear shipping policies. Educate users on proper packaging for
items.
Page | 3
2.2. System Configuration:
2.2.1. HARDWARE REQUIREMENT
➢ PROCESSOR : Pentium III 630MHz
➢ RAM : 2GB
➢ STORAGE : 550 MB
➢ Hard Disk. :20 GB
➢ DISPLAY : Standard output display
Computer system with updated software
2.2.2. SOFTWARE REQUIREMENT
Front-end:
➢ HTML
➢ CSS
➢ Java Script
Back-end:
➢ PHP
Software:
➢ VS code
➢ Git hub
Web Server Software Development Kit:
➢ XAMPP server
2.2.3. Functional Requirements
1 user management
2 product management
3 shopping Cart
4 payment processing
5 order management
6 seller management
2.2.4 Non-functional requirements
1 Performance
Page | 4
2 Security
3 Scalability
4 Usability
5 System architecture
6 User interface design
7 Testing requirements
8 Acceptance criteria
Page | 5
3. METHODOLOGY USED
3.1 The key components :
3.1.1. User Interface (UI):
Frontend Components:
• Product Listings:
Display second-hand products with images, descriptions, and prices.
• Search and Filters:
Allow users to search for specific items and apply filters.
• User Registration/Login:
Enable users to create accounts or log in securely.
3.1.2. Functionality:
• Product Management:
Sellers can list their second-hand products, providing details like condition, price, and
…..images.
Buyers can view, search, and filter products based on preferences.
3.1.3. User Interaction:
• Communication Tools:
Messaging system facilitates communication between buyers and sellers for inquiries
…..and negotiations.
• Rating and Review System:
Users can leave feedback and ratings for sellers and products.
3.1.4. Security Measures:
• User Authentication:
Page | 6
Secure registration and login processes to authenticate users.
Secure Sockets Layer (SSL) encryption for data protection during transactions.
3.1.5. Transaction Process:
• Shopping Cart:
Buyers can add items to a cart before proceeding to checkout.
Secure Checkout: Integration with payment gateways for secure transactions.
3.1.6. Quality Assurance:
• Product Quality Verification:
Encourage sellers to provide accurate product details, images, and condition.
Quality standards for product listings to maintain trust.
3.1.7. Recommendation System:
• Personalized Suggestions:
Algorithm-based recommendations for users based on past behaviour and preferences.
Enhances user experience and encourages engagement.
3.1.8. Logistics and Shipping Integration:
• Shipping Information:
Buyers provide shipping details during checkout.
Integration with reliable shipping partners for order fulfilment.
3.1.9. Feedback and Review Loop:
• Continuous Improvement:
System collects user feedback and reviews.
Feedback loop for ongoing system enhancement and issue resolution.
3.1.10. Backend Operations:
• Database:
Page | 7
Stores user profiles, product listings, transaction history, and other relevant data.
• Server-Side Logic:
Manages business logic, handles requests, and communicates with the database.
3.1.11. Administrator Panel:
• Content Management:
Admins can manage and moderate product listings, user accounts, and reported issues.
Access to analytics and reporting tools.
3.1.12. Legal and Compliance:
• Terms of Service:
Clearly defined terms governing user conduct and platform usage.
• Privacy Policy:
Outlines how user data is collected, used, and protected.
3.1.13. Mobile App (if applicable):
• Mobile User Interface:
Responsive design for seamless user experience on mobile devices.
• Synchronization:
Coordination between the website and mobile app for consistent data and functionality.
3.1.14. Customer Support:
• Support Channels:
Multiple channels for user assistance (chat, email, etc.).
Efficient issue resolution and user communication.
3.1.15. Analytics and Reporting:
• Performance Metrics:
Monitor user engagement, sales, and website performance.
Utilize analytics to make data-driven decisions for improvements.
Page | 8
3.2. Implementation plan/ Methodology
Fig 1. Flow Process of Your Wallet
Fig 2. Flow Process of Quick Note
Page | 9
4. PROJECT LIFE CYCLE
The life cycle of an e-commerce website for buying and selling second-hand products involves
several stages, from conceptualization to ongoing maintenance and improvement.
4.1 Breakdown of the typical life cycle:
4.1.1. Conceptualization and Planning:
• Idea Generation:
Identify the niche and target audience for the second-hand products marketplace.
• Market Research:
Analyse market trends, user needs, and competitor strategies.
• Define Objectives:
Establish clear goals for the e-commerce platform.
4.1.2. Design and Development:
• Prototyping:
Create wireframes and prototypes to visualize the website's structure and user
………interface.
• Technology Stack Selection:
Choose appropriate technologies and frameworks for development.
• Frontend and Backend Development:
Develop user interfaces, backend functionality, and integrate features.
4.1.3. Testing Phase:
• Functional Testing:
Verify individual features and system functionalities.
• User Acceptance Testing (UAT):
Involve actual users to validate the platform's usability.
Page | 10
• Bug Tracking and Resolution:
Address and resolve identified bugs and issues.
4.1.4. Launch:
• Go-Live:
Deploy the e-commerce website for public access.
• Marketing and Promotion:
Launch marketing campaigns to attract users and sellers.
• User Onboarding:
Guide users through the platform, encouraging registration and participation.
4.1.5. Initial Operations:
• Customer Support Setup:
Establish customer support channels for query resolution.
• Monitor and Optimize:
Track user interactions, monitor website performance, and optimize based on feedback.
4.1.6. User Growth and Engagement:
• Marketing Strategies:
Implement ongoing marketing strategies to attract new users.
• Community Building:
Foster a sense of community through engagement features and forums.
4.1.7. Feedback and Iteration:
• Continuous Improvement:
Collect user feedback and iterate on the platform.
• Feature Enhancements:
Introduce new features based on market trends and user needs
Page | 11
4.1.8. Scaling Operations:
• Infrastructure Scaling:
Increase server capacity and optimize infrastructure for scalability.
• Geographical Expansion:
Explore opportunities for expanding the platform's reach.
4.1.9. Security and Compliance:
• Regular Audits:
Conduct security audits to identify and address potential vulnerabilities.
• Legal Compliance:
Ensure ongoing compliance with e-commerce regulations.
4.1.10. Maintenance and Support:
• Technical Support:
Provide ongoing technical support for users and sellers.
• Software Updates:
Regularly update software components to maintain security and performance.
4.1.11. Data Analytics and Insights:
• Analytics Utilization:
Leverage analytics tools to gain insights into user behaviour and preferences.
• Data-Driven Decisions:
Make informed decisions based on data analysis.
4.1.12. Adaptation to Market Changes:
• Market Trends:
Stay informed about evolving market trends and adjust strategies accordingly.
• Competitor Analysis:
Monitor competitor activities and adapt to changing industry dynamics.
Page | 12
4.1.13. End-of-Life Considerations:
• Legacy System Management:
If necessary, plan for the transition to new technologies or platforms.
• Data Migration:
Safely manage data migration if moving to a new system.
Fig 3. Ecommerce Business Life Cycle
Page | 13
5. SOFTWARE REQUIRMENT SPECIFICATION
5.1 Visual Studio Code :
Visual Studio Code (VS Code) is a popular, free source-code editor developed by Microsoft.
It's renowned for its versatility, extensive customization options, and support for various
programming languages and frameworks.
Here are some key features and functionalities:
5.1.1 User Interface: VS Code boasts a clean and intuitive user interface, with a sidebar
for file navigation, a customizable status bar, and a powerful editor area.
5.1.2 Multi-Language Support: It supports a wide range of programming languages out
of the box, including JavaScript, TypeScript, Python, Java, C#, C++, and many others.
5.1.3 Extensions: One of the most powerful aspects of VS Code is its extension
marketplace. Users can extend its functionality with thousands of community-contributed
extensions, covering everything from language support to debugging tools and themes.
5.1.4 Integrated Terminal: VS Code includes an integrated terminal, allowing developers
to run commands and scripts without leaving the editor, enhancing productivity.
5.1.5 Debugging: It provides built-in support for debugging with breakpoints, variable
inspection, and other debugging features for various programming languages.
5.1.6 Version Control: VS Code has built-in Git support, enabling seamless version
control operations like commit, push, pull, and merge directly from the editor.
5.1.7 Customization: Users can customize almost every aspect of VS Code, including
themes, keyboard shortcuts, and settings, to tailor the editor to their workflow preference
5.1.6 IntelliSense: VS Code offers intelligent code completion, syntax highlighting, and
code snippets to assist developers as they write code, improving efficiency and reducing
errors.
Overall, Visual Studio Code is widely appreciated by developers for its performance,
flexibility, and extensive ecosystem of extensions, making it a top choice for many
programming tasks.
Page | 14
5.2 GitHub :
Certainly! GitHub is a comprehensive platform that serves as a hub for software development
projects. Here's a detailed breakdown of its key components and functionalities:
5.2.1 Version Control System (VCS):
GitHub is built around Git, a distributed version control system. Git allows developers to track
changes in their codebase over time.
With Git, developers can create snapshots of their project at different points in time, enabling
them to revert to previous versions if needed.
It also facilitates collaboration by allowing multiple developers to work on the same project
simultaneously without overwriting each other's changes.
5.2.2 Code Hosting and Repositories:
GitHub provides hosting for Git repositories. Developers can create repositories on GitHub to
store and manage their code.
Each repository contains the project's files, along with the complete history of changes made
to those files.
Repositories can be public, allowing anyone to view and contribute to the code, or private,
restricting access to only authorized collaborators.
5.2.3 Collaboration Tools:
GitHub offers various tools to facilitate collaboration among developers:
• Pull Requests (PRs): Developers can propose changes to a repository by creating a
pull request. PRs allow for discussion, feedback, and code review before changes are
merged into the main codebase.
• Code Reviews: Developers can review each other's code within pull requests,
providing feedback, suggesting improvements, and ensuring code quality.
• Issues and Bug Tracking: GitHub provides a built-in issue tracking system where
users can report bugs, request features, or discuss enhancements. Issues can be assigned
to specific individuals and tracked throughout their lifecycle.
• Wikis and Documentation: Repositories can include wikis and documentation to
provide additional context, guidelines, and instructions for contributors.
5.2.4 Project Management:
GitHub offers tools for project management and organization:
Page | 15
• Projects: GitHub Projects allow teams to create boards to organize and prioritize tasks,
track progress, and manage workflows using customizable columns and cards.
• Milestones: Teams can group related issues and pull requests into milestones to track
progress towards specific goals or deadlines.
5.2.5 Community and Social Features:
GitHub fosters a strong developer community with features such as:
• Forks: Users can create copies (forks) of repositories to experiment with changes
without affecting the original project. Forks can be contributed back to the original
project via pull requests.
• Stars and Watches: Users can "star" repositories to bookmark them for future
reference and "watch" repositories to receive notifications about new activity.
• Followers and Social Networking: GitHub allows users to follow other users, stay
updated on their activity, and build connections within the developer community.
Overall, GitHub provides a comprehensive suite of tools and features to support the entire
software development lifecycle, from version control and collaboration to project management
and community engagement. It has become an essential platform for developers and teams
working on both open-source and proprietary projects.
Page | 16
5.3 XAMPP
XAMPP is a software package that simplifies the process of setting up a local web server
environment on your computer for testing and development purposes.
Here's a detailed breakdown of its components and functionality:
Apache HTTP Server: Apache is one of the most widely used web servers in the world. In
XAMPP, Apache serves as the core component responsible for handling HTTP requests from
clients (such as web browsers) and serving web pages and other resources.
5.3.1 MySQL Database:
MySQL is a popular relational database management system (RDBMS) that is often used in
web development for storing and managing data. XAMPP includes MySQL as its database
component, allowing you to create and manage databases for your web applications.
5.3.2 PHP:
PHP is a server-side scripting language that is commonly used for web development. It is
embedded within HTML to generate dynamic content on web pages. XAMPP includes PHP as
one of its key components, allowing you to write and test PHP scripts locally before deploying
them to a live server.
5.3.3 Perl:
Perl is a high-level programming language known for its text processing capabilities. While
not as commonly used in web development as PHP, Perl is included in XAMPP to provide
additional scripting functionality for those who may need it.
5.3.4 Cross-platform compatibility:
XAMPP is designed to work on multiple operating systems, including Windows, macOS, and
Linux. This cross-platform compatibility makes it easy for developers to set up a consistent
development environment regardless of the operating system they are using.
5.3.5 Easy installation and configuration:
XAMPP features a straightforward installation process that bundles all the necessary
components into a single package. Once installed, you can easily configure Apache, MySQL,
PHP, and other settings using intuitive control panel interfaces.
Page | 17
5.3.4 Development and testing environment:
XAMPP is primarily used as a local development and testing environment for web developers.
It allows developers to write, test, and debug their web applications locally before deploying
them to a live server environment.
Overall, XAMPP provides a convenient and user-friendly solution for setting up a local web
server environment, making it an essential tool for web developers working on projects that
require PHP, MySQL, and Apache.
Page | 18
6. REFERENCE
[1] [Link]
[2] CSS [Link]
[3] Git
[4] GitHub
[5] Stack Overflow
[6] Reddit WebDev
[7] [Link]
Page | 19