FOOD CHAIN
Description:
The "Food Chain" project focuses on implementing a system to track the flow of food using a simplified blockchain-based approach. The system ensures that the journey of food products can be traced through various stages of the process, from cultivation to sale to the end customer. This includes all phases such as processing, storage, distribution, and other related operations.
Key Entities in the System
The main entities in the system are:
- Farmer:
- Can store, create, process, and remove products from storage but cannot return, purchase, or distribute products.
- Processor:
- Can perform all operations except distribution.
- Warehouse:
- Manages storage operations.
- Distributor:
- Handles distribution of products.
- Shop Owner:
- Can perform all operations except distribution.
- Customer:
- Can only purchase or return products.
Each entity performs specific operations related to food products, with restrictions based on their role in the supply chain.
System Features:
- Transaction Tracking:
- Tracks all operations performed on food products, such as creation, storage, processing, distribution, and sale.
- Issue Detection:
-
Detects potential issues such as double spending
(e.g., the same food product being sold multiple times).
Prevents attempts to alter or reverse completed transactions. - Reporting:
-
- Parties Report:
- Details how long and by whom a product was stored or held.
- Food Chain Report:
- Describes what happened to a product (e.g., created, stored, processed) and who performed these operations.
- Security Report:
- Focuses on detecting double spending and attempts to alter past transactions.
- Money Report:
- Lists all transactions related to product purchases, including product prices and the financial status of each party before and after the transaction.
Technologies:
- Java:
- Used for the implementation of the system.
- Development Tools:
- IntelliJ IDEA