|
---
|
|
---
|
|
title: Body
|
|
title: Body
|
|
---
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Final Deliverable III
|
|
# Final Deliverable III
|
|
|
|
|
|
## Required Links
|
|
## Required Links
|
|
- **GitLab**: [GitLab Link](https://gitlab.com/AkshitMarwaha1000/purroots_project/-/wikis/home)
|
|
- **GitLab**: [GitLab Link](https://gitlab.com/AkshitMarwaha1000/purroots_project/-/wikis/home)
|
|
- **YouTube**: [YouTube Link](https://www.youtube.com/shorts/jFlHVF2ktgo)
|
|
- **YouTube**: [YouTube Link](https://www.youtube.com/shorts/jFlHVF2ktgo)
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Describe Your Project
|
|
## Describe Your Project
|
|
|
|
|
|
### Problem Statement
|
|
### Problem Statement
|
|
Our project addresses a significant disconnect between local farmers and consumers, which often leads to limited access to fresh, locally sourced produce and reduced income opportunities for farmers. Many consumers face challenges finding high-quality, local food, while farmers struggle to reach target markets and effectively showcase their products.
|
|
Our project addresses a significant disconnect between local farmers and consumers, which often leads to limited access to fresh, locally sourced produce and reduced income opportunities for farmers. Many consumers face challenges finding high-quality, local food, while farmers struggle to reach target markets and effectively showcase their products.
|
|
|
|
|
|
### Solution Overview
|
|
### Solution Overview
|
|
To bridge this gap, we are developing a web application that connects local farmers directly with consumers. This platform will streamline the food supply chain, allowing users to easily browse and purchase fresh produce, dairy, and meat products from nearby farms. By supporting local agriculture, we aim to provide healthier food options for consumers while enhancing farmers' access to local markets.
|
|
To bridge this gap, we are developing a web application that connects local farmers directly with consumers. This platform will streamline the food supply chain, allowing users to easily browse and purchase fresh produce, dairy, and meat products from nearby farms. By supporting local agriculture, we aim to provide healthier food options for consumers while enhancing farmers' access to local markets.
|
|
|
|
|
|
### What Makes Us Unique
|
|
### What Makes Us Unique
|
|
At **Pure Roots**, we’re transforming the way you experience fresh, local food. Here’s why we stand out:
|
|
At **Pure Roots**, we’re transforming the way you experience fresh, local food. Here’s why we stand out:
|
|
1. **Direct from Local Farmers**: We connect you directly with local farmers, ensuring the freshest, seasonal produce and fair compensation for the growers. Every purchase supports your local agricultural community.
|
|
1. **Direct from Local Farmers**: We connect you directly with local farmers, ensuring the freshest, seasonal produce and fair compensation for the growers. Every purchase supports your local agricultural community.
|
|
2. **Freshness You Can Trust**: Our products are sourced straight from the fields, reaching you with minimal handling and transport. It’s farm-to-table, as fresh as it gets.
|
|
2. **Freshness You Can Trust**: Our products are sourced straight from the fields, reaching you with minimal handling and transport. It’s farm-to-table, as fresh as it gets.
|
|
3. **Community-Centered Values**: We’re more than a platform—we’re a movement to build stronger, more sustainable communities. By supporting local farmers, you help nurture the backbone of our food system.
|
|
3. **Community-Centered Values**: We’re more than a platform—we’re a movement to build stronger, more sustainable communities. By supporting local farmers, you help nurture the backbone of our food system.
|
|
4. **Sustainable Choices**: By sourcing locally, we reduce food miles and minimize our environmental footprint. Choosing Pure Roots is a step toward a greener, more sustainable future.
|
|
4. **Sustainable Choices**: By sourcing locally, we reduce food miles and minimize our environmental footprint. Choosing Pure Roots is a step toward a greener, more sustainable future.
|
|
5. **Customizable for Your Needs**: Whether you’re shopping for fresh fruits, vegetables, dairy, or other local products, Pure Roots offers the flexibility to choose exactly what you need—no pre-packed constraints, just fresh, wholesome choices.
|
|
5. **Customizable for Your Needs**: Whether you’re shopping for fresh fruits, vegetables, dairy, or other local products, Pure Roots offers the flexibility to choose exactly what you need—no pre-packed constraints, just fresh, wholesome choices.
|
|
|
|
|
|
### Featured Products
|
|
### Featured Products
|
|
A carousel or grid showcasing popular items (e.g., “Fresh Tomatoes,” “Farm-Fresh Eggs”).
|
|
A carousel or grid showcasing popular items (e.g., “Fresh Tomatoes,” “Farm-Fresh Eggs”).
|
|
|
|
|
|
### How It Works
|
|
### How It Works
|
|
1. **Browse Products**: Explore fresh, locally sourced items on our app or website.
|
|
1. **Browse Products**: Explore fresh, locally sourced items on our app or website.
|
|
2. **Choose & Order**: Pick what you need and place your order directly with local farmers.
|
|
2. **Choose & Order**: Pick what you need and place your order directly with local farmers.
|
|
3. **Farm-Fresh Delivery**: Enjoy fresh, sustainable produce delivered right to your doorstep.
|
|
3. **Farm-Fresh Delivery**: Enjoy fresh, sustainable produce delivered right to your doorstep.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## About Us
|
|
## About Us
|
|
Welcome to **Pure Roots**, your direct link to fresh, locally grown produce. We’re on a mission to empower farmers and bring the freshest, healthiest food to your doorstep. Our platform eliminates middlemen, ensuring fair prices for farmers and affordability for consumers.
|
|
Welcome to **Pure Roots**, your direct link to fresh, locally grown produce. We’re on a mission to empower farmers and bring the freshest, healthiest food to your doorstep. Our platform eliminates middlemen, ensuring fair prices for farmers and affordability for consumers.
|
|
|
|
|
|
At **Pure Roots**, we believe in:
|
|
At **Pure Roots**, we believe in:
|
|
- **Supporting Local Communities**: Helping local farmers thrive.
|
|
- **Supporting Local Communities**: Helping local farmers thrive.
|
|
- **Sustainability**: Reducing food miles and environmental impact.
|
|
- **Sustainability**: Reducing food miles and environmental impact.
|
|
- **Transparency**: Knowing where your food comes from.
|
|
- **Transparency**: Knowing where your food comes from.
|
|
|
|
|
|
### Our Values
|
|
### Our Values
|
|
- **Freshness**: Straight from farms to your table.
|
|
- **Freshness**: Straight from farms to your table.
|
|
- **Fairness**: Ensuring farmers get their due.
|
|
- **Fairness**: Ensuring farmers get their due.
|
|
- **Community**: Building connections between growers and consumers.
|
|
- **Community**: Building connections between growers and consumers.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Architectural Model Diagram
|
|
## Architectural Model Diagram
|
|
![image](uploads/b059702a0c8aa7971d8e5e401f2d190a/image.png)
|
|
![image](uploads/b059702a0c8aa7971d8e5e401f2d190a/image.png)
|
|
### Frontend (User Interface)
|
|
### Frontend (User Interface)
|
|
- **Devices Supported**: Desktop, tablet, and smartphones.
|
|
- **Devices Supported**: Desktop, tablet, and smartphones.
|
|
- **Technologies Used**:
|
|
- **Technologies Used**:
|
|
- HTML, CSS, JavaScript for structure and interactivity.
|
|
- HTML, CSS, JavaScript for structure and interactivity.
|
|
- Bootstrap for responsive design ensuring usability across devices.
|
|
- Bootstrap for responsive design ensuring usability across devices.
|
|
- Swiper.js for creating engaging sliders for product showcasing.
|
|
- Swiper.js for creating engaging sliders for product showcasing.
|
|
|
|
|
|
#### Features:
|
|
#### Features:
|
|
- User registration and login interface.
|
|
- User registration and login interface.
|
|
- Product catalog with search, filter, and cart management options.
|
|
- Product catalog with search, filter, and cart management options.
|
|
- Farmer profiles with ratings and reviews.
|
|
- Farmer profiles with ratings and reviews.
|
|
- Educational content on local farming and recipes.
|
|
- Educational content on local farming and recipes.
|
|
|
|
|
|
### Backend (Application Logic)
|
|
### Backend (Application Logic)
|
|
- **Technologies Used**: Node.js with Express.js for a robust and scalable backend.
|
|
- **Technologies Used**: Node.js with Express.js for a robust and scalable backend.
|
|
- **Programming Language**: JavaScript.
|
|
- **Programming Language**: JavaScript.
|
|
|
|
|
|
#### Features:
|
|
#### Features:
|
|
- User authentication and session management.
|
|
- User authentication and session management.
|
|
- API endpoints for handling frontend requests.
|
|
- API endpoints for handling frontend requests.
|
|
- Logic for cart operations, order tracking, and farmer data management.
|
|
- Logic for cart operations, order tracking, and farmer data management.
|
|
|
|
|
|
### Database (Data Storage)
|
|
### Database (Data Storage)
|
|
- **Database Type**: SQL using MySQL versions.
|
|
- **Database Type**: SQL using MySQL versions.
|
|
|
|
|
|
#### Features:
|
|
#### Features:
|
|
- Secure storage for user profiles, product details, and order history.
|
|
- Secure storage for user profiles, product details, and order history.
|
|
- Support for querying seasonal product availability and farmer information.
|
|
- Support for querying seasonal product availability and farmer information.
|
|
|
|
|
|
### External Services:
|
|
### External Services:
|
|
- **Payment Gateway**: Currently not functional but provision exists for future integration.
|
|
- **Payment Gateway**: Currently not functional but provision exists for future integration.
|
|
- **Map Integration**: Can be added later for locating nearby farmers or tracking deliveries.
|
|
- **Map Integration**: Can be added later for locating nearby farmers or tracking deliveries.
|
|
- **Notification Services**: To be implemented for order confirmations or promotional updates.
|
|
- **Notification Services**: To be implemented for order confirmations or promotional updates.
|
|
|
|
|
|
### Cloud Hosting:
|
|
### Cloud Hosting:
|
|
- **Hosting Provider**: GitLab.
|
|
- **Hosting Provider**: GitLab.
|
|
- **Deployment**: Continuous Integration/Continuous Deployment (CI/CD) pipeline for smooth updates and scaling.
|
|
- **Deployment**: Continuous Integration/Continuous Deployment (CI/CD) pipeline for smooth updates and scaling.
|
|
|
|
|
|
### Communication Protocols:
|
|
### Communication Protocols:
|
|
- Frontend to Backend: HTTPS for secure communication.
|
|
- Frontend to Backend: HTTPS for secure communication.
|
|
- Backend to Database: Secure queries with SSL/TLS encryption.
|
|
- Backend to Database: Secure queries with SSL/TLS encryption.
|
|
- Backend to External Services (Future Scope): APIs with OAuth or token-based authentication.
|
|
- Backend to External Services (Future Scope): APIs with OAuth or token-based authentication.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Support for Functional and Quality Attributes
|
|
## Support for Functional and Quality Attributes
|
|
|
|
|
|
### Functional Attributes
|
|
### Functional Attributes
|
|
- **User Registration and Profiles**: Enables users to create accounts, save preferences, and manage order history securely.
|
|
- **User Registration and Profiles**: Enables users to create accounts, save preferences, and manage order history securely.
|
|
- **Product Catalog and Search**: Allows efficient browsing and filtering of locally available products.
|
|
- **Product Catalog and Search**: Allows efficient browsing and filtering of locally available products.
|
|
- **Order Management**: Handles shopping cart functionalities and maintains a record of orders.
|
|
- **Order Management**: Handles shopping cart functionalities and maintains a record of orders.
|
|
- **Farmer Profiles and Reviews**: Highlights farmer practices and incorporates a review system for transparency.
|
|
- **Farmer Profiles and Reviews**: Highlights farmer practices and incorporates a review system for transparency.
|
|
|
|
|
|
### Quality Attributes
|
|
### Quality Attributes
|
|
- **Usability**: Designed with Bootstrap for intuitive navigation on all devices. Easy-to-use sliders with Swiper.js enhance user engagement.
|
|
- **Usability**: Designed with Bootstrap for intuitive navigation on all devices. Easy-to-use sliders with Swiper.js enhance user engagement.
|
|
- **Performance**: Node.js ensures non-blocking, fast request processing. Optimized MySQL queries for quick data retrieval.
|
|
- **Performance**: Node.js ensures non-blocking, fast request processing. Optimized MySQL queries for quick data retrieval.
|
|
- **Scalability**: GitLab hosting with CI/CD enables seamless scaling for future traffic.
|
|
- **Scalability**: GitLab hosting with CI/CD enables seamless scaling for future traffic.
|
|
- **Security**: HTTPS and TLS encryption safeguard sensitive user data.
|
|
- **Security**: HTTPS and TLS encryption safeguard sensitive user data.
|
|
|
|
|
|
### Communication Protocols:
|
|
### Communication Protocols:
|
|
- Backend to Database: MySQL queries executed over a secure connection.
|
|
- Backend to Database: MySQL queries executed over a secure connection.
|
|
- Backend to Future External Services: APIs secured with tokens or OAuth for authentication.
|
|
- Backend to Future External Services: APIs secured with tokens or OAuth for authentication.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Status Report and Demo Summary for Pure Roots
|
|
## Status Report and Demo Summary for Pure Roots
|
|
|
|
|
|
### Functionalities Implemented
|
|
### Functionalities Implemented
|
|
- **User Registration and Profiles**: Users can successfully create accounts and manage basic profiles.
|
|
- **User Registration and Profiles**: Users can successfully create accounts and manage basic profiles.
|
|
- **Product Catalog and Search**: A comprehensive catalog is available, sortable by categories, location, and price.
|
|
- **Product Catalog and Search**: A comprehensive catalog is available, sortable by categories, location, and price.
|
|
|
|
|
|
### Functionalities Partially Implemented
|
|
### Functionalities Partially Implemented
|
|
- **Order Management**: Users can add items to the cart. However, order review and status tracking functionalities are only available on the frontend, with backend integration yet to be enabled.
|
|
- **Order Management**: Users can add items to the cart. However, order review and status tracking functionalities are only available on the frontend, with backend integration yet to be enabled.
|
|
|
|
|
|
### Functionalities Not Fully Implemented and Reasons
|
|
### Functionalities Not Fully Implemented and Reasons
|
|
- **Farmer Profiles and Reviews**: Only one admin profile is currently enabled. Multiple farmer profiles were not implemented due to time constraints.
|
|
- **Farmer Profiles and Reviews**: Only one admin profile is currently enabled. Multiple farmer profiles were not implemented due to time constraints.
|
|
- **Payment Processing**: No payment methods have been activated. This feature was dropped because work on the payment gateway began only a week ago after the review meeting, leaving insufficient time for complete implementation.
|
|
- **Payment Processing**: No payment methods have been activated. This feature was dropped because work on the payment gateway began only a week ago after the review meeting, leaving insufficient time for complete implementation.
|
|
- **Educational Resources**: Recipes and nutritional information were removed as they were deemed unnecessary for the current scope.
|
|
- **Educational Resources**: Recipes and nutritional information were removed as they were deemed unnecessary for the current scope.
|
|
- **Seasonal Offerings**: Highlighting seasonal products was not implemented, as this feature was deprioritized due to its limited perceived value at this stage.
|
|
- **Seasonal Offerings**: Highlighting seasonal products was not implemented, as this feature was deprioritized due to its limited perceived value at this stage.
|
|
- **Real-Time Order Tracking**: This feature was not implemented due to time limitations and prioritization of other core functionalities.
|
|
- **Real-Time Order Tracking**: This feature was not implemented due to time limitations and prioritization of other core functionalities.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Revised UML Diagram
|
|
## Revised UML Diagram
|
|
![image](uploads/de0fccab8d406c56a313d5d0e7318572/image.png)
|
|
![image](uploads/de0fccab8d406c56a313d5d0e7318572/image.png)
|
|
### Projected Members Contribution
|
|
### Projected Members Contribution
|
|
|
|
|
|
- **Saumyaa Gelani**
|
|
- **Saumyaa Gelani**
|
|
- **Role**: Oversees project management and frontend development.
|
|
- **Role**: Oversees project management and frontend development.
|
|
- **Responsibilities**: Manage project progress, design wireframes, implement frontend, conduct usability testing, develop marketing materials, etc.
|
|
- **Responsibilities**: Manage project progress, design wireframes, implement frontend, conduct usability testing, develop marketing materials, etc.
|
|
- **Commit Frequency**: At least two commits per week.
|
|
- **Commit Frequency**: At least two commits per week.
|
|
|
|
|
|
- **Akshit Marwaha**
|
|
- **Akshit Marwaha**
|
|
- **Role**: Focuses on developing and maintaining the backend.
|
|
- **Role**: Focuses on developing and maintaining the backend.
|
|
- **Responsibilities**: Develop server-side logic, manage database, implement security measures, collaborate on frontend-backend integration.
|
|
- **Responsibilities**: Develop server-side logic, manage database, implement security measures, collaborate on frontend-backend integration.
|
|
- **Commit Frequency**: At least three commits per week.
|
|
- **Commit Frequency**: At least three commits per week.
|
|
|
|
|
|
- **Krish Sharma**
|
|
- **Krish Sharma**
|
|
- **Role**: Ensures quality and reliability through testing.
|
|
- **Role**: Ensures quality and reliability through testing.
|
|
- **Responsibilities**: Develop and execute test plans, conduct usability testing, monitor system performance, document test results, etc.
|
|
- **Responsibilities**: Develop and execute test plans, conduct usability testing, monitor system performance, document test results, etc.
|
|
|
|
|
|
- **Gokulhesh Khanna**
|
|
- **Gokulhesh Khanna**
|
|
- **Role**: Focuses on documentation and API integration testing.
|
|
- **Role**: Focuses on documentation and API integration testing.
|
|
- **Responsibilities**: Organize project documentation, assist with API integration, collaborate on user guides, test newly integrated features, etc.
|
|
- **Responsibilities**: Organize project documentation, assist with API integration, collaborate on user guides, test newly integrated features, etc.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
## Task Breakdown
|
|
## Task Breakdown
|
|
|
|
|
|
| *Task Breakdown* | *Major Contributor* | *Minor Contributors* |
|
|
| *Task Breakdown* | *Major Contributor* | *Minor Contributors* |
|
|
|-------------------------------------|----------------------------------|-------------------------|
|
|
|-------------------------------------|----------------------------------|-------------------------|
|
|
| Project Description | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
| Project Description | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
| UI/UX Designs on Figma | Saumyaa | Akshit, Gokulhesh, Krish |
|
|
| UI/UX Designs on Figma | Saumyaa | Akshit, Gokulhesh, Krish |
|
|
| GitLab Wiki Setup | Akshit | Krish, Gokulhesh |
|
|
| GitLab Wiki Setup | Akshit | Krish, Gokulhesh |
|
|
| Functional Properties | Akshit, Gokulhesh | Saumyaa |
|
|
| Functional Properties | Akshit, Gokulhesh | Saumyaa |
|
|
| User Scenarios | Krish | Saumyaa |
|
|
| User Scenarios | Krish | Saumyaa |
|
|
| Quality Attributes | Krish | Akshit |
|
|
| Quality Attributes | Krish | Akshit |
|
|
| UML, UMP, DOT File | Saumyaa, Krish | Akshit |
|
|
| UML, UMP, DOT File | Saumyaa, Krish | Akshit |
|
|
| Home Page | Akshit, Saumyaa | Krish |
|
|
| Home Page | Akshit, Saumyaa | Krish |
|
|
| Login Page | Krish | Saumyaa |
|
|
| Login Page | Krish | Saumyaa |
|
|
| Product & Collections | Gokulhesh | Akshit |
|
|
| Product & Collections | Gokulhesh | Akshit |
|
|
| SQL, Node.js, and All Backend | Akshit | Gokulhesh |
|
|
| SQL, Node.js, and All Backend | Akshit | Gokulhesh |
|
|
| Website Setup & Finalized Edits | Akshit | NA |
|
|
| Website Setup & Finalized Edits | Akshit | NA |
|
|
| Website Server Setup | Akshit | Gokulhesh |
|
|
| Website Server Setup | Akshit | Gokulhesh |
|
|
| Pricing, Naming, Codes | Saumyaa | Krish |
|
|
| Pricing, Naming, Codes | Saumyaa | Krish |
|
|
| Image Collection for Website | Saumyaa, Gokulhesh | |
|
|
| Image Collection for Website | Saumyaa, Gokulhesh | |
|
|
| CSS, HTML | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
| CSS, HTML | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
| Video Shoot | Saumyaa | Akshit |
|
|
| Video Shoot | Saumyaa | Akshit |
|
|
| Video Editing | Saumyaa | NA |
|
|
| Video Editing | Saumyaa | NA |
|
|
| UML Diagram | Saumyaa | NA |
|
|
| UML Diagram | Saumyaa | NA |
|
|
| Presentation | Krish, Gokulhesh | Saumyaa |
|
|
| Presentation | Krish, Gokulhesh | Saumyaa |
|
|
| Video Script Writing | Saumyaa | Akshit |
|
|
| Video Script Writing | Saumyaa | Akshit |
|
|
| Architectural Model Diagram | Saumyaa, Gokulhesh | Akshit |
|
|
| Architectural Model Diagram | Saumyaa, Gokulhesh | Akshit |
|
|
| Architectural System | Saumyaa, Gokulhesh | Krish, Akshit |
|
|
| Architectural System | Saumyaa, Gokulhesh | Krish, Akshit |
|
|
---
|
|
---
|
|
|
|
|
|
## Proposed Project
|
|
## Proposed Project
|
|
|
|
|
|
### Unique Features and Benefits:
|
|
### Unique Features and Benefits:
|
|
- **Farmer Profiles**: Detailed profiles highlighting farming practices.
|
|
- **Farmer Profiles**: Detailed profiles highlighting farming practices.
|
|
- **Seasonal Offerings**: A catalog of seasonal products.
|
|
- **Seasonal Offerings**: A catalog of seasonal products.
|
|
- **Educational Components**: Recipes, nutritional information, and educational resources for promoting healthier eating habits.
|
|
- **Educational Components**: Recipes, nutritional information, and educational resources for promoting healthier eating habits.
|
|
|
|
|
|
### Platform Choice:
|
|
### Platform Choice:
|
|
- Web-based platform accessible from any device with internet connectivity.
|
|
- Web-based platform accessible from any device with internet connectivity.
|
|
|
|
|
|
### Societal Impact:
|
|
### Societal Impact:
|
|
- **Supporting Local Economies**: Creates a direct market for local farmers.
|
|
- **Supporting Local Economies**: Creates a direct market for local farmers.
|
|
- **Promoting Sustainable Agriculture**: Encourages local sourcing, reducing environmental impact.
|
|
- **Promoting Sustainable Agriculture**: Encourages local sourcing, reducing environmental impact.
|
|
- **Building Community Connections**: Fosters a sense of community and supports sustainable practices.
|
|
- **Building Community Connections**: Fosters a sense of community and supports sustainable practices.
|
|
|
|
|
|
### Requirements Statement:
|
|
### Requirements Statement:
|
|
The project addresses the disconnect between local farmers and consumers by creating a web application that facilitates a more efficient and sustainable food supply chain. The platform will include features like user registration, product catalogs, order management, payment processing, and farmer profiles with reviews.
|
|
The project addresses the disconnect between local farmers and consumers by creating a web application that facilitates a more efficient and sustainable food supply chain. The platform will include features like user registration, product catalogs, order management, payment processing, and farmer profiles with reviews.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
# Functional Properties (FPs)
|
|
# Functional Properties (FPs)
|
|
|
|
|
|
### User Registration and Profiles
|
|
### User Registration and Profiles
|
|
Users can create accounts and set up profiles to save their preferences, order history, and payment methods. This feature allows for a personalized shopping experience.
|
|
Users can create accounts and set up profiles to save their preferences, order history, and payment methods. This feature allows for a personalized shopping experience.
|
|
|
|
|
|
### Product Catalog and Search
|
|
### Product Catalog and Search
|
|
The application will provide a comprehensive catalog of available products, sortable by categories such as fruits, vegetables, dairy, and meats. Users can also search for specific items, filtering by location, availability, and price.
|
|
The application will provide a comprehensive catalog of available products, sortable by categories such as fruits, vegetables, dairy, and meats. Users can also search for specific items, filtering by location, availability, and price.
|
|
|
|
|
|
### Order Management
|
|
### Order Management
|
|
Users can add products to their cart, review their selections, and place orders. This includes functionalities for tracking order status and managing past orders.
|
|
Users can add products to their cart, review their selections, and place orders. This includes functionalities for tracking order status and managing past orders.
|
|
|
|
|
|
### Payment Processing
|
|
### Payment Processing
|
|
The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
### Farmer Profiles and Reviews
|
|
### Farmer Profiles and Reviews
|
|
Users can view profiles of participating farmers, including their farming practices and product offerings. They can also leave reviews and ratings based on their experiences.
|
|
Users can view profiles of participating farmers, including their farming practices and product offerings. They can also leave reviews and ratings based on their experiences.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
# Justifications
|
|
# Justifications
|
|
|
|
|
|
### User Registration and Profiles
|
|
### User Registration and Profiles
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
### Product Catalog and Search
|
|
### Product Catalog and Search
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
|
|
|
|
### Order Management
|
|
### Order Management
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
|
|
|
|
### Payment Processing
|
|
### Payment Processing
|
|
- *Justification:* Provides a secure and convenient way for users to complete their transactions, which is critical for building trust in the platform.
|
|
- *Justification:* Provides a secure and convenient way for users to complete their transactions, which is critical for building trust in the platform.
|
|
|
|
|
|
### Farmer Profiles and Reviews
|
|
### Farmer Profiles and Reviews
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
---
|
|
---
|
|
|
|
|
|
# UML Diagram
|
|
# UML Diagram
|
|
|
|
|
|
## Use Case Model
|
|
## Use Case Model
|
|
|
|
![image](uploads/f61b42e467b716f3f4d12a5f27681843/image.png)
|
|
### 1. *User Registration*
|
|
# Actors
|
|
- *Actors:* Consumer
|
|
- User
|
|
- *Preconditions:* User has internet access.
|
|
- Farmer
|
|
- *Postconditions:* User has an account and can log in.
|
|
- System
|
|
- *Main Flow:*
|
|
- Payment Gateway
|
|
1. User navigates to the sign-in/sign-up page.
|
|
|
|
2. User fills out the registration form (name, email, password).
|
|
# Use Cases
|
|
3. User submits the form.
|
|
- Register/Login
|
|
4. System confirms registration and directs the user to their profile.
|
|
- Browse Products
|
|
|
|
- Place Order
|
|
---
|
|
- View Farmer Profile
|
|
|
|
- Leave Review
|
|
### 2. *Product Search and Order Placement*
|
|
- View Order History
|
|
- *Actors:* Consumer
|
|
# Use Case: Place Order
|
|
- *Preconditions:* User is logged in.
|
|
|
|
- *Postconditions:* User has successfully placed an order.
|
|
## Actors
|
|
- *Main Flow:*
|
|
- Consumer
|
|
1. User navigates to the product catalog.
|
|
- System
|
|
2. User searches for a specific product or browses categories.
|
|
- Payment Gateway
|
|
3. User adds desired items to the cart.
|
|
|
|
4. User reviews the cart and proceeds to checkout.
|
|
## Preconditions
|
|
5. User enters payment information and confirms the order.
|
|
- User must be logged in.
|
|
|
|
- Cart must contain products.
|
|
---
|
|
|
|
|
|
## Steps
|
|
### 3. *Farmer Profile and Review*
|
|
1. User selects "Proceed to Checkout."
|
|
- *Actors:* Consumer
|
|
2. System calculates total cost.
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
3. User enters payment details.
|
|
- *Postconditions:* User has submitted a review.
|
|
4. Payment Gateway validates payment.
|
|
- *Main Flow:*
|
|
5. System confirms the order and provides a summary.
|
|
1. User navigates to the farmer’s profile page.
|
|
|
|
2. User reads information about the farmer and their practices.
|
|
## Postconditions
|
|
3. User clicks on the review section.
|
|
- Order is recorded.
|
|
4. User submits a rating and a written review.
|
|
- User receives confirmation.
|
|
5. System updates the farmer’s profile with the new review.
|
|
|
|
|
|
---
|
|
---
|
|
![image](uploads/9953592c914dc43dc28ab034c15830e8/image.png)
|
|
|
|
# Use Case: Register/Login
|
|
# Justifications
|
|
|
|
|
|
## Actors
|
|
|
|
- User
|
|
|
|
|
|
### 1. *User Registration and Profiles*
|
|
## Preconditions
|
|
|
|
- The user must have access to the internet.
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
## Postconditions
|
|
|
|
- A user account is created, or the user is logged in to access their profile and features.
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
## Main Flow
|
|
|
|
1. User navigates to the registration or login page.
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
2. User enters required information:
|
|
|
|
- For login: email and password.
|
|
|
|
- For registration: email, password, and additional details like name.
|
|
|
|
3. The system validates the input.
|
|
### 3. *Order Management*
|
|
4. For registration:
|
|
|
|
- The system stores user information.
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
- The system sends a confirmation email.
|
|
|
|
5. The user is redirected to their profile/dashboard.
|
|
|
|
|
|
|
|
---
|
|
### 4. *Payment Processing*
|
|
![image](uploads/5e89c8c2b1cfd5633ffc97d174593c45/image.png)
|
|
|
|
# Use Case: Browse Products
|
|
- *Justification:* Provides a secure and convenient way for users to complete their transactions, which is critical for building trust in the platform.
|
|
|
|
|
|
## Actors
|
|
|
|
- User
|
|
|
|
|
|
### 5. *Farmer Profiles and Reviews*
|
|
## Preconditions
|
|
|
|
- The user is logged in to the system.
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
## Postconditions
|
|
---
|
|
- The user views available products, filtered and sorted as needed.
|
|
|
|
|
|
# UML DIAGRAM
|
|
## Main Flow
|
|
![image](uploads/00d335705caa12394aaf0a6aac4b204a/image.png)
|
|
1. User navigates to the product catalog.
|
|
## Use Case Model
|
|
2. User browses the catalog or enters keywords in the search bar.
|
|
|
|
3. User applies filters (e.g., product category, price range) and sorts products (e.g., by price or availability).
|
|
### 1. *User Registration*
|
|
4. System displays the filtered/sorted results.
|
|
- *Actors:* Consumer
|
|
5. User selects a product for more details.
|
|
- *Preconditions:* User has internet access.
|
|
|
|
- *Postconditions:* User has an account and can log in.
|
|
---
|
|
- *Main Flow:*
|
|
![image](uploads/b58b42a3512303dd31300879806c34d3/image.png)
|
|
1. User navigates to the sign-in/sign-up page.
|
|
# Use Case: Leave Review
|
|
2. User fills out the registration form (name, email, password).
|
|
|
|
3. User submits the form.
|
|
## Actors
|
|
4. System confirms registration and directs the user to their profile.
|
|
- User
|
|
|
|
|
|
### 2. *Product Search and Order Placement*
|
|
## Preconditions
|
|
- *Actors:* Consumer
|
|
- The user has completed a purchase from a farmer.
|
|
- *Preconditions:* User is logged in.
|
|
|
|
- *Postconditions:* User has successfully placed an order.
|
|
## Postconditions
|
|
- *Main Flow:*
|
|
- The system records the user’s review and updates the farmer’s profile.
|
|
1. User navigates to the product catalog.
|
|
|
|
2. User searches for a specific product or browses categories.
|
|
## Main Flow
|
|
3. User adds desired items to the cart.
|
|
1. User navigates to the farmer's profile or order history.
|
|
4. User reviews the cart and proceeds to checkout.
|
|
2. User selects "Leave a Review."
|
|
5. User enters payment information and confirms the order.
|
|
3. User enters a star rating and optional written feedback.
|
|
|
|
4. System validates the review and adds it to the farmer’s profile.
|
|
### 3. *Farmer Profile and Review*
|
|
5. Other users can view the submitted review.
|
|
- *Actors:* Consumer
|
|
---
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
|
|
- *Postconditions:* User has submitted a review.
|
|
# Justifications
|
|
- *Main Flow:*
|
|
|
|
1. User navigates to the farmer’s profile page.
|
|
|
|
2. User reads information about the farmer and their practices.
|
|
### 1. *User Registration and Profiles*
|
|
3. User clicks on the review section.
|
|
|
|
4. User submits a rating and a written review.
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
5. System updates the farmer’s profile with the new review.
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
## Functional Properties (FPs)
|
|
|
|
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
### 1. *User Registration and Profiles*
|
|
|
|
- *Description:* Users can create accounts and set up profiles to save their preferences, order history, and payment methods. This feature allows for a personalized shopping experience.
|
|
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
### 3. *Order Management*
|
|
- *Description:* The application will provide a comprehensive catalog of available products, sortable by categories such as fruits, vegetables, dairy, and meats. Users can also search for specific items, filtering by location, availability, and price.
|
|
|
|
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
### 3. *Order Management*
|
|
|
|
- *Description:* Users can add products to their cart, review their selections, and place orders. This includes functionalities for tracking order status and managing past orders.
|
|
|
|
|
|
|
|
### 4. *Payment Processing*
|
|
### 4. *Payment Processing*
|
|
- *Description:* The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
- *Justification:* Provides a secure and convenient way for users to complete their transactions, which is critical for building trust in the platform.
|
|
### 5. *Farmer Profiles and Reviews*
|
|
|
|
- *Description:* Users can view profiles of participating farmers, including their farming practices and product offerings. They can also leave reviews and ratings based on their experiences.
|
|
|
|
|
|
|
|
---
|
|
### 5. *Farmer Profiles and Reviews*
|
|
|
|
|
|
## Detailed Use Case Scenarios
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
### 1. *User Registration and Login*
|
|
---
|
|
- *Primary Actor:* User
|
|
|
|
- *Goal:* Register and log in to access profile and order history.
|
|
# UML DIAGRAM
|
|
- *Relationships:*
|
|
![image](uploads/00d335705caa12394aaf0a6aac4b204a/image.png)
|
|
- *Include:* Validate Credentials, Send Confirmation Email
|
|
## Use Case Model
|
|
- *Exclude:* Access Restricted Features
|
|
|
|
|
|
### 1. *User Registration*
|
|
### 2. *View Product Catalog*
|
|
- *Actors:* Consumer
|
|
- *Primary Actor:* User
|
|
- *Preconditions:* User has internet access.
|
|
- *Goal:* View a catalog of available products.
|
|
- *Postconditions:* User has an account and can log in.
|
|
- *Relationships:*
|
|
- *Main Flow:*
|
|
- *Include:* Search Product, Filter by Category, Sort by Price
|
|
1. User navigates to the sign-in/sign-up page.
|
|
|
|
2. User fills out the registration form (name, email, password).
|
|
### 3. *Search and Filter Products*
|
|
3. User submits the form.
|
|
- *Primary Actor:* User
|
|
4. System confirms registration and directs the user to their profile.
|
|
- *Goal:* Search and filter products based on specific criteria.
|
|
|
|
- *Relationships:*
|
|
### 2. *Product Search and Order Placement*
|
|
- *Include:* Sort by Price, Filter by Availability
|
|
- *Actors:* Consumer
|
|
|
|
- *Preconditions:* User is logged in.
|
|
### 4. *Order Management*
|
|
- *Postconditions:* User has successfully placed an order.
|
|
- *Primary Actor:* User
|
|
- *Main Flow:*
|
|
- *Goal:* Manage the shopping cart and place orders.
|
|
1. User navigates to the product catalog.
|
|
- *Relationships:*
|
|
2. User searches for a specific product or browses categories.
|
|
- *Include:* Add to Cart, Calculate Total, Apply Discounts, Generate Order Confirmation
|
|
3. User adds desired items to the cart.
|
|
- *Exclude:* Edit Order
|
|
4. User reviews the cart and proceeds to checkout.
|
|
|
|
5. User enters payment information and confirms the order.
|
|
### 5. *Process Payment*
|
|
|
|
- *Primary Actor:* Payment Gateway
|
|
### 3. *Farmer Profile and Review*
|
|
- *Goal:* Handle payment processing for user orders.
|
|
- *Actors:* Consumer
|
|
- *Relationships:*
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
- *Include:* Validate Payment Details, Send Payment Confirmation
|
|
- *Postconditions:* User has submitted a review.
|
|
- *Exclude:* Retry Payment
|
|
- *Main Flow:*
|
|
|
|
1. User navigates to the farmer’s profile page.
|
|
### 6. *View Farmer Profiles and Reviews*
|
|
2. User reads information about the farmer and their practices.
|
|
- *Primary Actor:* User
|
|
3. User clicks on the review section.
|
|
- *Goal:* View details about farmers and their reviews.
|
|
4. User submits a rating and a written review.
|
|
- *Relationships:*
|
|
5. System updates the farmer’s profile with the new review.
|
|
- *Include:* View Farming Practices, View Product Offerings
|
|
|
|
|
|
---
|
|
### 7. *Leave Review*
|
|
|
|
- *Primary Actor:* User
|
|
## Functional Properties (FPs)
|
|
- *Goal:* Leave reviews and ratings for farmers after purchasing products.
|
|
|
|
- *Relationships:*
|
|
### 1. *User Registration and Profiles*
|
|
- *Include:* Submit Rating, Submit Comment
|
|
- *Description:* Users can create accounts and set up profiles to save their preferences, order history, and payment methods. This feature allows for a personalized shopping experience.
|
|
- *Exclude:* Edit Review
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
---
|
|
- *Description:* The application will provide a comprehensive catalog of available products, sortable by categories such as fruits, vegetables, dairy, and meats. Users can also search for specific items, filtering by location, availability, and price.
|
|
|
|
|
|
## Detailed Use Case Relationships
|
|
### 3. *Order Management*
|
|
|
|
- *Description:* Users can add products to their cart, review their selections, and place orders. This includes functionalities for tracking order status and managing past orders.
|
|
### Include Relationships (<<include>>)
|
|
|
|
- User Registration and Login includes Validate Credentials and Send Confirmation Email.
|
|
### 4. *Payment Processing*
|
|
- View Product Catalog includes Search Product, Filter by Category, and Sort by Price.
|
|
- *Description:* The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
- Order Management includes Add to Cart, Calculate Total, Apply Discounts, and Generate Order Confirmation.
|
|
|
|
- Process Payment includes Validate Payment Details and Send Payment Confirmation.
|
|
### 5. *Farmer Profiles and Reviews*
|
|
- View Farmer Profiles and Reviews includes View Farming Practices and View Product Offerings.
|
|
- *Description:* Users can view profiles of participating farmers, including their farming practices and product offerings. They can also leave reviews and ratings based on their experiences.
|
|
- Leave Review includes Submit Rating and Submit Comment.
|
|
|
|
|
|
---
|
|
### Exclude Relationships (<<exclude>>)
|
|
|
|
- User Registration and Login excludes Access Restricted Features.
|
|
## Detailed Use Case Scenarios
|
|
- Order Management excludes Edit Order.
|
|
|
|
- Process Payment excludes Retry Payment.
|
|
### 1. *User Registration and Login*
|
|
- Leave Review excludes Edit Review.
|
|
- *Primary Actor:* User
|
|
|
|
- *Goal:* Register and log in to access profile and order history.
|
|
---
|
|
- *Relationships:*
|
|
|
|
- *Include:* Validate Credentials, Send Confirmation Email
|
|
![image](uploads/80b9c18564456584d1914128364bf96f/image.png)
|
|
- *Exclude:* Access Restricted Features
|
|
|
|
|
|
## Quality Attributes
|
|
### 2. *View Product Catalog*
|
|
|
|
- *Primary Actor:* User
|
|
### 1. *Usability*
|
|
- *Goal:* View a catalog of available products.
|
|
- *Description:* Usability is crucial for our web application as it directly affects user satisfaction and engagement. The platform should have an intuitive interface that allows users of all ages and technological backgrounds to navigate easily. Features like clear labeling, straightforward navigation, and accessible search options will enhance the overall user experience.
|
|
- *Relationships:*
|
|
|
|
- *Include:* Search Product, Filter by Category, Sort by Price
|
|
### 2. *Performance*
|
|
|
|
- *Description:* Performance is another key quality attribute that our system must support. The application should load quickly, with minimal latency during browsing, searching, and checkout processes. We will optimize the application’s backend and frontend, ensuring efficient database queries and responsive design.
|
|
### 3. *Search and Filter Products*
|
|
|
|
- *Primary Actor:* User
|
|
### 3. *Security*
|
|
- *Goal:* Search and filter products based on specific criteria.
|
|
|
|
- *Relationships:*
|
|
|
|
- *Include:* Sort by Price, Filter by Availability
|
|
|
|
|
|
|
|
### 4. *Order Management*
|
|
|
|
- *Primary Actor:* User
|
|
|
|
- *Goal:* Manage the shopping cart and place orders.
|
|
|
|
- *Relationships:*
|
|
|
|
- *Include:* Add to Cart, Calculate Total, Apply Discounts, Generate Order Confirmation
|
|
|
|
- *Exclude:* Edit Order
|
|
|
|
|
|
|
|
### 5. *Process Payment*
|
|
|
|
- *Primary Actor:* Payment Gateway
|
|
|
|
- *Goal:* Handle payment processing for user orders.
|
|
|
|
- *Relationships:*
|
|
|
|
- *Include:* Validate Payment Details, Send Payment Confirmation
|
|
|
|
- *Exclude:* Retry Payment
|
|
|
|
|
|
|
|
### 6. *View Farmer Profiles and Reviews*
|
|
|
|
- *Primary Actor:* User
|
|
|
|
- *Goal:* View details about farmers and their reviews.
|
|
|
|
- *Relationships:*
|
|
|
|
- *Include:* View Farming Practices, View Product Offerings
|
|
|
|
|
|
|
|
### 7. *Leave Review*
|
|
|
|
- *Primary Actor:* User
|
|
|
|
- *Goal:* Leave reviews and ratings for farmers after purchasing products.
|
|
|
|
- *Relationships:*
|
|
|
|
- *Include:* Submit Rating, Submit Comment
|
|
|
|
- *Exclude:* Edit Review
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Detailed Use Case Relationships
|
|
|
|
|
|
|
|
### Include Relationships (<<include>>)
|
|
|
|
- User Registration and Login includes Validate Credentials and Send Confirmation Email.
|
|
|
|
- View Product Catalog includes Search Product, Filter by Category, and Sort by Price.
|
|
|
|
- Order Management includes Add to Cart, Calculate Total, Apply Discounts, and Generate Order Confirmation.
|
|
|
|
- Process Payment includes Validate Payment Details and Send Payment Confirmation.
|
|
|
|
- View Farmer Profiles and Reviews includes View Farming Practices and View Product Offerings.
|
|
|
|
- Leave Review includes Submit Rating and Submit Comment.
|
|
|
|
|
|
|
|
### Exclude Relationships (<<exclude>>)
|
|
|
|
- User Registration and Login excludes Access Restricted Features.
|
|
|
|
- Order Management excludes Edit Order.
|
|
|
|
- Process Payment excludes Retry Payment.
|
|
|
|
- Leave Review excludes Edit Review.
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
![image](uploads/80b9c18564456584d1914128364bf96f/image.png)
|
|
|
|
|
|
|
|
## Quality Attributes
|
|
|
|
|
|
|
|
### 1. *Usability*
|
|
|
|
- *Description:* Usability is crucial for our web application as it directly affects user satisfaction and engagement. The platform should have an intuitive interface that allows users of all ages and technological backgrounds to navigate easily. Features like clear labeling, straightforward navigation, and accessible search options will enhance the overall user experience.
|
|
|
|
|
|
|
|
### 2. *Performance*
|
|
|
|
- *Description:* Performance is another key quality attribute that our system must support. The application should load quickly, with minimal latency during browsing, searching, and checkout processes. We will optimize the application’s backend and frontend, ensuring efficient database queries and responsive design.
|
|
|
|
|
|
|
|
### 3. *Security*
|
|
- *Description:* Security is a non-negotiable quality attribute for our web application, especially given that it involves handling sensitive user data, including personal information and payment details. The system must incorporate robust security measures, such as data encryption, secure payment gateways, and regular security audits, to protect against data breaches and cyberattacks. |
|
- *Description:* Security is a non-negotiable quality attribute for our web application, especially given that it involves handling sensitive user data, including personal information and payment details. The system must incorporate robust security measures, such as data encryption, secure payment gateways, and regular security audits, to protect against data breaches and cyberattacks. |
|
|
|
\ No newline at end of file |