|
|
---
|
|
|
title: Body
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Final Deliverable III
|
|
|
|
|
|
## Required Links
|
|
|
- **GitLab**: [GitLab Link](https://gitlab.com/AkshitMarwaha1000/purroots_project/-/wikis/home)
|
|
|
- **YouTube**: [YouTube Link](https://www.youtube.com/shorts/jFlHVF2ktgo)
|
|
|
|
|
|
---
|
|
|
|
|
|
## Describe Your Project
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### What Makes Us Unique
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
|
|
|
### Featured Products
|
|
|
A carousel or grid showcasing popular items (e.g., “Fresh Tomatoes,” “Farm-Fresh Eggs”).
|
|
|
|
|
|
### How It Works
|
|
|
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.
|
|
|
3. **Farm-Fresh Delivery**: Enjoy fresh, sustainable produce delivered right to your doorstep.
|
|
|
|
|
|
---
|
|
|
|
|
|
## 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.
|
|
|
|
|
|
At **Pure Roots**, we believe in:
|
|
|
- **Supporting Local Communities**: Helping local farmers thrive.
|
|
|
- **Sustainability**: Reducing food miles and environmental impact.
|
|
|
- **Transparency**: Knowing where your food comes from.
|
|
|
|
|
|
### Our Values
|
|
|
- **Freshness**: Straight from farms to your table.
|
|
|
- **Fairness**: Ensuring farmers get their due.
|
|
|
- **Community**: Building connections between growers and consumers.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Architectural Model Diagram
|
|
|
![image](uploads/b059702a0c8aa7971d8e5e401f2d190a/image.png)
|
|
|
### Frontend (User Interface)
|
|
|
- **Devices Supported**: Desktop, tablet, and smartphones.
|
|
|
- **Technologies Used**:
|
|
|
- HTML, CSS, JavaScript for structure and interactivity.
|
|
|
- Bootstrap for responsive design ensuring usability across devices.
|
|
|
- Swiper.js for creating engaging sliders for product showcasing.
|
|
|
|
|
|
#### Features:
|
|
|
- User registration and login interface.
|
|
|
- Product catalog with search, filter, and cart management options.
|
|
|
- Farmer profiles with ratings and reviews.
|
|
|
- Educational content on local farming and recipes.
|
|
|
|
|
|
### Backend (Application Logic)
|
|
|
- **Technologies Used**: Node.js with Express.js for a robust and scalable backend.
|
|
|
- **Programming Language**: JavaScript.
|
|
|
|
|
|
#### Features:
|
|
|
- User authentication and session management.
|
|
|
- API endpoints for handling frontend requests.
|
|
|
- Logic for cart operations, order tracking, and farmer data management.
|
|
|
|
|
|
### Database (Data Storage)
|
|
|
- **Database Type**: SQL using MySQL versions.
|
|
|
|
|
|
#### Features:
|
|
|
- Secure storage for user profiles, product details, and order history.
|
|
|
- Support for querying seasonal product availability and farmer information.
|
|
|
|
|
|
### External Services:
|
|
|
- **Payment Gateway**: Currently not functional but provision exists for future integration.
|
|
|
- **Map Integration**: Can be added later for locating nearby farmers or tracking deliveries.
|
|
|
- **Notification Services**: To be implemented for order confirmations or promotional updates.
|
|
|
|
|
|
### Cloud Hosting:
|
|
|
- **Hosting Provider**: GitLab.
|
|
|
- **Deployment**: Continuous Integration/Continuous Deployment (CI/CD) pipeline for smooth updates and scaling.
|
|
|
|
|
|
### Communication Protocols:
|
|
|
- Frontend to Backend: HTTPS for secure communication.
|
|
|
- Backend to Database: Secure queries with SSL/TLS encryption.
|
|
|
- Backend to External Services (Future Scope): APIs with OAuth or token-based authentication.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Support for Functional and Quality Attributes
|
|
|
|
|
|
### Functional Attributes
|
|
|
- **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.
|
|
|
- **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.
|
|
|
|
|
|
### Quality Attributes
|
|
|
- **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.
|
|
|
- **Scalability**: GitLab hosting with CI/CD enables seamless scaling for future traffic.
|
|
|
- **Security**: HTTPS and TLS encryption safeguard sensitive user data.
|
|
|
|
|
|
### Communication Protocols:
|
|
|
- Backend to Database: MySQL queries executed over a secure connection.
|
|
|
- Backend to Future External Services: APIs secured with tokens or OAuth for authentication.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Status Report and Demo Summary for Pure Roots
|
|
|
|
|
|
### Functionalities Implemented
|
|
|
- **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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
- **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.
|
|
|
- **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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Revised UML Diagram
|
|
|
![image](uploads/de0fccab8d406c56a313d5d0e7318572/image.png)
|
|
|
### Projected Members Contribution
|
|
|
|
|
|
- **Saumyaa Gelani**
|
|
|
- **Role**: Oversees project management and frontend development.
|
|
|
- **Responsibilities**: Manage project progress, design wireframes, implement frontend, conduct usability testing, develop marketing materials, etc.
|
|
|
- **Commit Frequency**: At least two commits per week.
|
|
|
|
|
|
- **Akshit Marwaha**
|
|
|
- **Role**: Focuses on developing and maintaining the backend.
|
|
|
- **Responsibilities**: Develop server-side logic, manage database, implement security measures, collaborate on frontend-backend integration.
|
|
|
- **Commit Frequency**: At least three commits per week.
|
|
|
|
|
|
- **Krish Sharma**
|
|
|
- **Role**: Ensures quality and reliability through testing.
|
|
|
- **Responsibilities**: Develop and execute test plans, conduct usability testing, monitor system performance, document test results, etc.
|
|
|
|
|
|
- **Gokulhesh Khanna**
|
|
|
- **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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Task Breakdown
|
|
|
|
|
|
| *Task Breakdown* | *Major Contributor* | *Minor Contributors* |
|
|
|
|-------------------------------------|----------------------------------|-------------------------|
|
|
|
| Project Description | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
|
| UI/UX Designs on Figma | Saumyaa | Akshit, Gokulhesh, Krish |
|
|
|
| GitLab Wiki Setup | Akshit | Krish, Gokulhesh |
|
|
|
| Functional Properties | Akshit, Gokulhesh | Saumyaa |
|
|
|
| User Scenarios | Krish | Saumyaa |
|
|
|
| Quality Attributes | Krish | Akshit |
|
|
|
| UML, UMP, DOT File | Saumyaa, Krish | Akshit |
|
|
|
| Home Page | Akshit, Saumyaa | Krish |
|
|
|
| Login Page | Krish | Saumyaa |
|
|
|
| Product & Collections | Gokulhesh | Akshit |
|
|
|
| SQL, Node.js, and All Backend | Akshit | Gokulhesh |
|
|
|
| Website Setup & Finalized Edits | Akshit | NA |
|
|
|
| Website Server Setup | Akshit | Gokulhesh |
|
|
|
| Pricing, Naming, Codes | Saumyaa | Krish |
|
|
|
| Image Collection for Website | Saumyaa, Gokulhesh | |
|
|
|
| CSS, HTML | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
|
| Video Shoot | Saumyaa | Akshit |
|
|
|
| Video Editing | Saumyaa | NA |
|
|
|
| UML Diagram | Saumyaa | NA |
|
|
|
| Presentation | Krish, Gokulhesh | Saumyaa |
|
|
|
| Video Script Writing | Saumyaa | Akshit |
|
|
|
| Architectural Model Diagram | Saumyaa, Gokulhesh | Akshit |
|
|
|
| Architectural System | Saumyaa, Gokulhesh | Krish, Akshit |
|
|
|
---
|
|
|
|
|
|
## Proposed Project
|
|
|
|
|
|
### Unique Features and Benefits:
|
|
|
- **Farmer Profiles**: Detailed profiles highlighting farming practices.
|
|
|
- **Seasonal Offerings**: A catalog of seasonal products.
|
|
|
- **Educational Components**: Recipes, nutritional information, and educational resources for promoting healthier eating habits.
|
|
|
|
|
|
### Platform Choice:
|
|
|
- Web-based platform accessible from any device with internet connectivity.
|
|
|
|
|
|
### Societal Impact:
|
|
|
- **Supporting Local Economies**: Creates a direct market for local farmers.
|
|
|
- **Promoting Sustainable Agriculture**: Encourages local sourcing, reducing environmental impact.
|
|
|
- **Building Community Connections**: Fosters a sense of community and supports sustainable practices.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
# Functional Properties (FPs)
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### Payment Processing
|
|
|
The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
# Justifications
|
|
|
|
|
|
### User Registration and Profiles
|
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
### Product Catalog and Search
|
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
|
|
|
|
### Order Management
|
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
|
|
|
|
### Payment Processing
|
|
|
- *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
|
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
---
|
|
|
|
|
|
# UML Diagram
|
|
|
|
|
|
## Use Case Model
|
|
|
|
|
|
### 1. *User Registration*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User has internet access.
|
|
|
- *Postconditions:* User has an account and can log in.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the sign-in/sign-up page.
|
|
|
2. User fills out the registration form (name, email, password).
|
|
|
3. User submits the form.
|
|
|
4. System confirms registration and directs the user to their profile.
|
|
|
|
|
|
---
|
|
|
|
|
|
### 2. *Product Search and Order Placement*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in.
|
|
|
- *Postconditions:* User has successfully placed an order.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the product catalog.
|
|
|
2. User searches for a specific product or browses categories.
|
|
|
3. User adds desired items to the cart.
|
|
|
4. User reviews the cart and proceeds to checkout.
|
|
|
5. User enters payment information and confirms the order.
|
|
|
|
|
|
---
|
|
|
|
|
|
### 3. *Farmer Profile and Review*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
|
- *Postconditions:* User has submitted a review.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the farmer’s profile page.
|
|
|
2. User reads information about the farmer and their practices.
|
|
|
3. User clicks on the review section.
|
|
|
4. User submits a rating and a written review.
|
|
|
5. System updates the farmer’s profile with the new review.
|
|
|
|
|
|
---
|
|
|
|
|
|
# Justifications
|
|
|
|
|
|
|
|
|
|
|
|
### 1. *User Registration and Profiles*
|
|
|
|
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
|
|
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
|
|
|
|
|
|
|
|
|
|
### 3. *Order Management*
|
|
|
|
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
|
|
|
|
|
|
|
|
|
|
### 4. *Payment Processing*
|
|
|
|
|
|
- *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*
|
|
|
|
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
---
|
|
|
|
|
|
# UML DIAGRAM
|
|
|
![image](uploads/00d335705caa12394aaf0a6aac4b204a/image.png)
|
|
|
## Use Case Model
|
|
|
|
|
|
### 1. *User Registration*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User has internet access.
|
|
|
- *Postconditions:* User has an account and can log in.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the sign-in/sign-up page.
|
|
|
2. User fills out the registration form (name, email, password).
|
|
|
3. User submits the form.
|
|
|
4. System confirms registration and directs the user to their profile.
|
|
|
|
|
|
### 2. *Product Search and Order Placement*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in.
|
|
|
- *Postconditions:* User has successfully placed an order.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the product catalog.
|
|
|
2. User searches for a specific product or browses categories.
|
|
|
3. User adds desired items to the cart.
|
|
|
4. User reviews the cart and proceeds to checkout.
|
|
|
5. User enters payment information and confirms the order.
|
|
|
|
|
|
### 3. *Farmer Profile and Review*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
|
- *Postconditions:* User has submitted a review.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the farmer’s profile page.
|
|
|
2. User reads information about the farmer and their practices.
|
|
|
3. User clicks on the review section.
|
|
|
4. User submits a rating and a written review.
|
|
|
5. System updates the farmer’s profile with the new review.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Functional Properties (FPs)
|
|
|
|
|
|
### 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*
|
|
|
- *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.
|
|
|
|
|
|
### 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*
|
|
|
- *Description:* The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Detailed Use Case Scenarios
|
|
|
|
|
|
### 1. *User Registration and Login*
|
|
|
- *Primary Actor:* User
|
|
|
- *Goal:* Register and log in to access profile and order history.
|
|
|
- *Relationships:*
|
|
|
- *Include:* Validate Credentials, Send Confirmation Email
|
|
|
- *Exclude:* Access Restricted Features
|
|
|
|
|
|
### 2. *View Product Catalog*
|
|
|
- *Primary Actor:* User
|
|
|
- *Goal:* View a catalog of available products.
|
|
|
- *Relationships:*
|
|
|
- *Include:* Search Product, Filter by Category, Sort by Price
|
|
|
|
|
|
### 3. *Search and Filter Products*
|
|
|
- *Primary Actor:* User
|
|
|
- *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*
|
|
|
---
|
|
|
title: Body
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Final Deliverable III
|
|
|
|
|
|
## Required Links
|
|
|
- **GitLab**: [GitLab Link](https://gitlab.com/AkshitMarwaha1000/purroots_project/-/wikis/home)
|
|
|
- **YouTube**: [YouTube Link](https://www.youtube.com/shorts/jFlHVF2ktgo)
|
|
|
|
|
|
---
|
|
|
|
|
|
## Describe Your Project
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### What Makes Us Unique
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
|
|
|
### Featured Products
|
|
|
A carousel or grid showcasing popular items (e.g., “Fresh Tomatoes,” “Farm-Fresh Eggs”).
|
|
|
|
|
|
### How It Works
|
|
|
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.
|
|
|
3. **Farm-Fresh Delivery**: Enjoy fresh, sustainable produce delivered right to your doorstep.
|
|
|
|
|
|
---
|
|
|
|
|
|
## 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.
|
|
|
|
|
|
At **Pure Roots**, we believe in:
|
|
|
- **Supporting Local Communities**: Helping local farmers thrive.
|
|
|
- **Sustainability**: Reducing food miles and environmental impact.
|
|
|
- **Transparency**: Knowing where your food comes from.
|
|
|
|
|
|
### Our Values
|
|
|
- **Freshness**: Straight from farms to your table.
|
|
|
- **Fairness**: Ensuring farmers get their due.
|
|
|
- **Community**: Building connections between growers and consumers.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Architectural Model Diagram
|
|
|
![image](uploads/b059702a0c8aa7971d8e5e401f2d190a/image.png)
|
|
|
### Frontend (User Interface)
|
|
|
- **Devices Supported**: Desktop, tablet, and smartphones.
|
|
|
- **Technologies Used**:
|
|
|
- HTML, CSS, JavaScript for structure and interactivity.
|
|
|
- Bootstrap for responsive design ensuring usability across devices.
|
|
|
- Swiper.js for creating engaging sliders for product showcasing.
|
|
|
|
|
|
#### Features:
|
|
|
- User registration and login interface.
|
|
|
- Product catalog with search, filter, and cart management options.
|
|
|
- Farmer profiles with ratings and reviews.
|
|
|
- Educational content on local farming and recipes.
|
|
|
|
|
|
### Backend (Application Logic)
|
|
|
- **Technologies Used**: Node.js with Express.js for a robust and scalable backend.
|
|
|
- **Programming Language**: JavaScript.
|
|
|
|
|
|
#### Features:
|
|
|
- User authentication and session management.
|
|
|
- API endpoints for handling frontend requests.
|
|
|
- Logic for cart operations, order tracking, and farmer data management.
|
|
|
|
|
|
### Database (Data Storage)
|
|
|
- **Database Type**: SQL using MySQL versions.
|
|
|
|
|
|
#### Features:
|
|
|
- Secure storage for user profiles, product details, and order history.
|
|
|
- Support for querying seasonal product availability and farmer information.
|
|
|
|
|
|
### External Services:
|
|
|
- **Payment Gateway**: Currently not functional but provision exists for future integration.
|
|
|
- **Map Integration**: Can be added later for locating nearby farmers or tracking deliveries.
|
|
|
- **Notification Services**: To be implemented for order confirmations or promotional updates.
|
|
|
|
|
|
### Cloud Hosting:
|
|
|
- **Hosting Provider**: GitLab.
|
|
|
- **Deployment**: Continuous Integration/Continuous Deployment (CI/CD) pipeline for smooth updates and scaling.
|
|
|
|
|
|
### Communication Protocols:
|
|
|
- Frontend to Backend: HTTPS for secure communication.
|
|
|
- Backend to Database: Secure queries with SSL/TLS encryption.
|
|
|
- Backend to External Services (Future Scope): APIs with OAuth or token-based authentication.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Support for Functional and Quality Attributes
|
|
|
|
|
|
### Functional Attributes
|
|
|
- **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.
|
|
|
- **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.
|
|
|
|
|
|
### Quality Attributes
|
|
|
- **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.
|
|
|
- **Scalability**: GitLab hosting with CI/CD enables seamless scaling for future traffic.
|
|
|
- **Security**: HTTPS and TLS encryption safeguard sensitive user data.
|
|
|
|
|
|
### Communication Protocols:
|
|
|
- Backend to Database: MySQL queries executed over a secure connection.
|
|
|
- Backend to Future External Services: APIs secured with tokens or OAuth for authentication.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Status Report and Demo Summary for Pure Roots
|
|
|
|
|
|
### Functionalities Implemented
|
|
|
- **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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
- **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.
|
|
|
- **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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Revised UML Diagram
|
|
|
![image](uploads/de0fccab8d406c56a313d5d0e7318572/image.png)
|
|
|
### Projected Members Contribution
|
|
|
|
|
|
- **Saumyaa Gelani**
|
|
|
- **Role**: Oversees project management and frontend development.
|
|
|
- **Responsibilities**: Manage project progress, design wireframes, implement frontend, conduct usability testing, develop marketing materials, etc.
|
|
|
- **Commit Frequency**: At least two commits per week.
|
|
|
|
|
|
- **Akshit Marwaha**
|
|
|
- **Role**: Focuses on developing and maintaining the backend.
|
|
|
- **Responsibilities**: Develop server-side logic, manage database, implement security measures, collaborate on frontend-backend integration.
|
|
|
- **Commit Frequency**: At least three commits per week.
|
|
|
|
|
|
- **Krish Sharma**
|
|
|
- **Role**: Ensures quality and reliability through testing.
|
|
|
- **Responsibilities**: Develop and execute test plans, conduct usability testing, monitor system performance, document test results, etc.
|
|
|
|
|
|
- **Gokulhesh Khanna**
|
|
|
- **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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Task Breakdown
|
|
|
|
|
|
| *Task Breakdown* | *Major Contributor* | *Minor Contributors* |
|
|
|
|-------------------------------------|----------------------------------|-------------------------|
|
|
|
| Project Description | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
|
| UI/UX Designs on Figma | Saumyaa | Akshit, Gokulhesh, Krish |
|
|
|
| GitLab Wiki Setup | Akshit | Krish, Gokulhesh |
|
|
|
| Functional Properties | Akshit, Gokulhesh | Saumyaa |
|
|
|
| User Scenarios | Krish | Saumyaa |
|
|
|
| Quality Attributes | Krish | Akshit |
|
|
|
| UML, UMP, DOT File | Saumyaa, Krish | Akshit |
|
|
|
| Home Page | Akshit, Saumyaa | Krish |
|
|
|
| Login Page | Krish | Saumyaa |
|
|
|
| Product & Collections | Gokulhesh | Akshit |
|
|
|
| SQL, Node.js, and All Backend | Akshit | Gokulhesh |
|
|
|
| Website Setup & Finalized Edits | Akshit | NA |
|
|
|
| Website Server Setup | Akshit | Gokulhesh |
|
|
|
| Pricing, Naming, Codes | Saumyaa | Krish |
|
|
|
| Image Collection for Website | Saumyaa, Gokulhesh | |
|
|
|
| CSS, HTML | Saumyaa | Akshit, Krish, Gokulhesh |
|
|
|
| Video Shoot | Saumyaa | Akshit |
|
|
|
| Video Editing | Saumyaa | NA |
|
|
|
| UML Diagram | Saumyaa | NA |
|
|
|
| Presentation | Krish, Gokulhesh | Saumyaa |
|
|
|
| Video Script Writing | Saumyaa | Akshit |
|
|
|
| Architectural Model Diagram | Saumyaa, Gokulhesh | Akshit |
|
|
|
| Architectural System | Saumyaa, Gokulhesh | Krish, Akshit |
|
|
|
---
|
|
|
|
|
|
## Proposed Project
|
|
|
|
|
|
### Unique Features and Benefits:
|
|
|
- **Farmer Profiles**: Detailed profiles highlighting farming practices.
|
|
|
- **Seasonal Offerings**: A catalog of seasonal products.
|
|
|
- **Educational Components**: Recipes, nutritional information, and educational resources for promoting healthier eating habits.
|
|
|
|
|
|
### Platform Choice:
|
|
|
- Web-based platform accessible from any device with internet connectivity.
|
|
|
|
|
|
### Societal Impact:
|
|
|
- **Supporting Local Economies**: Creates a direct market for local farmers.
|
|
|
- **Promoting Sustainable Agriculture**: Encourages local sourcing, reducing environmental impact.
|
|
|
- **Building Community Connections**: Fosters a sense of community and supports sustainable practices.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
# Functional Properties (FPs)
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
### Payment Processing
|
|
|
The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
# Justifications
|
|
|
|
|
|
### User Registration and Profiles
|
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
### Product Catalog and Search
|
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
|
|
|
|
### Order Management
|
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
|
|
|
|
### Payment Processing
|
|
|
- *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
|
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
---
|
|
|
|
|
|
# UML Diagram
|
|
|
|
|
|
## Use Case Model
|
|
|
![image](uploads/f61b42e467b716f3f4d12a5f27681843/image.png)
|
|
|
# Actors
|
|
|
- User
|
|
|
- Farmer
|
|
|
- System
|
|
|
- Payment Gateway
|
|
|
|
|
|
# Use Cases
|
|
|
- Register/Login
|
|
|
- Browse Products
|
|
|
- Place Order
|
|
|
- View Farmer Profile
|
|
|
- Leave Review
|
|
|
- View Order History
|
|
|
# Use Case: Place Order
|
|
|
|
|
|
## Actors
|
|
|
- Consumer
|
|
|
- System
|
|
|
- Payment Gateway
|
|
|
|
|
|
## Preconditions
|
|
|
- User must be logged in.
|
|
|
- Cart must contain products.
|
|
|
|
|
|
## Steps
|
|
|
1. User selects "Proceed to Checkout."
|
|
|
2. System calculates total cost.
|
|
|
3. User enters payment details.
|
|
|
4. Payment Gateway validates payment.
|
|
|
5. System confirms the order and provides a summary.
|
|
|
|
|
|
## Postconditions
|
|
|
- Order is recorded.
|
|
|
- User receives confirmation.
|
|
|
|
|
|
---
|
|
|
![image](uploads/9953592c914dc43dc28ab034c15830e8/image.png)
|
|
|
# Use Case: Register/Login
|
|
|
|
|
|
## Actors
|
|
|
- User
|
|
|
|
|
|
## Preconditions
|
|
|
- The user must have access to the internet.
|
|
|
|
|
|
## Postconditions
|
|
|
- A user account is created, or the user is logged in to access their profile and features.
|
|
|
|
|
|
## Main Flow
|
|
|
1. User navigates to the registration or login page.
|
|
|
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.
|
|
|
4. For registration:
|
|
|
- The system stores user information.
|
|
|
- The system sends a confirmation email.
|
|
|
5. The user is redirected to their profile/dashboard.
|
|
|
|
|
|
---
|
|
|
![image](uploads/5e89c8c2b1cfd5633ffc97d174593c45/image.png)
|
|
|
# Use Case: Browse Products
|
|
|
|
|
|
## Actors
|
|
|
- User
|
|
|
|
|
|
## Preconditions
|
|
|
- The user is logged in to the system.
|
|
|
|
|
|
## Postconditions
|
|
|
- The user views available products, filtered and sorted as needed.
|
|
|
|
|
|
## Main Flow
|
|
|
1. User navigates to the product catalog.
|
|
|
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).
|
|
|
4. System displays the filtered/sorted results.
|
|
|
5. User selects a product for more details.
|
|
|
|
|
|
---
|
|
|
![image](uploads/b58b42a3512303dd31300879806c34d3/image.png)
|
|
|
# Use Case: Leave Review
|
|
|
|
|
|
## Actors
|
|
|
- User
|
|
|
|
|
|
## Preconditions
|
|
|
- The user has completed a purchase from a farmer.
|
|
|
|
|
|
## Postconditions
|
|
|
- The system records the user’s review and updates the farmer’s profile.
|
|
|
|
|
|
## Main Flow
|
|
|
1. User navigates to the farmer's profile or order history.
|
|
|
2. User selects "Leave a Review."
|
|
|
3. User enters a star rating and optional written feedback.
|
|
|
4. System validates the review and adds it to the farmer’s profile.
|
|
|
5. Other users can view the submitted review.
|
|
|
---
|
|
|
|
|
|
# Justifications
|
|
|
|
|
|
|
|
|
### 1. *User Registration and Profiles*
|
|
|
|
|
|
- *Justification:* Enhances user engagement by personalizing the shopping experience, making it easier for users to return and reorder.
|
|
|
|
|
|
|
|
|
|
|
|
### 2. *Product Catalog and Search*
|
|
|
|
|
|
- *Justification:* Ensures that users can easily find and access the products they need, promoting efficient shopping and reducing frustration.
|
|
|
|
|
|
|
|
|
|
|
|
### 3. *Order Management*
|
|
|
|
|
|
- *Justification:* Streamlines the purchasing process, making it user-friendly and encouraging repeat purchases.
|
|
|
|
|
|
|
|
|
|
|
|
### 4. *Payment Processing*
|
|
|
|
|
|
- *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*
|
|
|
|
|
|
- *Justification:* Creates transparency, allowing consumers to make informed decisions and fostering a connection between farmers and customers.
|
|
|
|
|
|
---
|
|
|
|
|
|
# UML DIAGRAM
|
|
|
![image](uploads/00d335705caa12394aaf0a6aac4b204a/image.png)
|
|
|
## Use Case Model
|
|
|
|
|
|
### 1. *User Registration*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User has internet access.
|
|
|
- *Postconditions:* User has an account and can log in.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the sign-in/sign-up page.
|
|
|
2. User fills out the registration form (name, email, password).
|
|
|
3. User submits the form.
|
|
|
4. System confirms registration and directs the user to their profile.
|
|
|
|
|
|
### 2. *Product Search and Order Placement*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in.
|
|
|
- *Postconditions:* User has successfully placed an order.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the product catalog.
|
|
|
2. User searches for a specific product or browses categories.
|
|
|
3. User adds desired items to the cart.
|
|
|
4. User reviews the cart and proceeds to checkout.
|
|
|
5. User enters payment information and confirms the order.
|
|
|
|
|
|
### 3. *Farmer Profile and Review*
|
|
|
- *Actors:* Consumer
|
|
|
- *Preconditions:* User is logged in and has purchased from a farmer.
|
|
|
- *Postconditions:* User has submitted a review.
|
|
|
- *Main Flow:*
|
|
|
1. User navigates to the farmer’s profile page.
|
|
|
2. User reads information about the farmer and their practices.
|
|
|
3. User clicks on the review section.
|
|
|
4. User submits a rating and a written review.
|
|
|
5. System updates the farmer’s profile with the new review.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Functional Properties (FPs)
|
|
|
|
|
|
### 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*
|
|
|
- *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.
|
|
|
|
|
|
### 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*
|
|
|
- *Description:* The platform will securely handle various payment methods, enabling users to pay for their purchases directly through the application.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Detailed Use Case Scenarios
|
|
|
|
|
|
### 1. *User Registration and Login*
|
|
|
- *Primary Actor:* User
|
|
|
- *Goal:* Register and log in to access profile and order history.
|
|
|
- *Relationships:*
|
|
|
- *Include:* Validate Credentials, Send Confirmation Email
|
|
|
- *Exclude:* Access Restricted Features
|
|
|
|
|
|
### 2. *View Product Catalog*
|
|
|
- *Primary Actor:* User
|
|
|
- *Goal:* View a catalog of available products.
|
|
|
- *Relationships:*
|
|
|
- *Include:* Search Product, Filter by Category, Sort by Price
|
|
|
|
|
|
### 3. *Search and Filter Products*
|
|
|
- *Primary Actor:* User
|
|
|
- *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. |
|
|
\ No newline at end of file |