Professional Documents
Culture Documents
Inventory Management System (Lab3) (11)
Inventory Management System (Lab3) (11)
Inventory Management System (Lab3) (11)
1. Problem Description
An Inventory Management System (IMS) is required for a retail store to efficiently track, manage,
and control its inventory. The system aims to optimize inventory levels, reduce stockouts, prevent
We need to create an inventory management system for tracking stock levels, managing product
information, and processing orders for businesses. Include features such as barcode scanning, supplier
management, inventory forecasting, reporting to optimize inventory control and streamline business
operations.
businesses of various sizes and industries. It will enable users to track inventory levels in real-time,
manage product data and suppliers, automate order processing, and generate reports for informed
decision-making.
2
2. Functional Requirements
▪ Enable users to create accounts and log in securely with unique credentials.
▪ The system should support different user roles such as admins, managers, and warehouse staff.
▪ User permissions should be configurable to control access to specific features and data.
▪ Enable users to add, edit, and delete product information such (Product Name, Description, SKU,
▪ Enable users to upload images and attach documents (e.g., specifications, manuals) to product
records.
▪ The system should track inventory levels in real-time and update quantities automatically as
▪ Enable users to perform inventory counts and reconcile discrepancies between physical counts and
recorded quantities.
▪ Low stock alerts should be triggered when inventory levels fall below predefined thresholds.
▪ Enable users to scan barcodes to add products to orders, update inventory levels, and perform stock
checks.
▪ Barcode labels should be printable from the system to facilitate labeling of products and bins.
▪ Enable users to manage supplier information, including contact details, pricing agreements, and
lead times.
▪ The system should track supplier performance metrics such as on-time delivery rates and product
quality.
▪ Enable users to generate purchase orders directly from supplier records and track order statuses.
▪ The system should support the creation and processing of purchase orders, sales orders, and
3
▪ Enable users to generate invoices, packing slips, and shipping labels for outgoing orders.
▪ Order statuses should be updated automatically as orders are fulfilled and shipped.
▪ The system should analyze historical sales data and inventory trends to forecast future demand.
▪ Enable users to generate inventory forecasts for individual products or product categories.
▪ Forecast accuracy should be continuously evaluated and adjusted based on actual sales data.
3. Non-Functional Requirements
▪ Performance: The system should be scalable and have fast response times and smooth
performance.
▪ Security: User data and sensitive information must be encrypted and securely stored. The system
should implement access controls to ensure that only authorized users can modify inventory data.
▪ Usability: user interface should be user-friendly, with clear navigation and easy access to key
features.
▪ Platform: Web-Based Platform using web languages such as HTML, CSS, JavaScript, and a
4
4. Use Case Model
There are eight actors, the Admin, Product Manager, Inventory Manager, Warehouse (Supplier),
Order Processing Staff, Developers, Testers, and IT Support Team.
1. The Admin can create accounts, upload images (attach documents), manage system and manage
all users.
2. The Product Manager can manage product info (add, delete, update).
3. The Inventory Manager can track inventory levels (inventory counts), manage stock. manage staff,
4. The Warehouse (Supplier) can deliver orders, create invoices, and receive returns.
5. The IT Support Team can provide technical support and ensure performance and Security.
6. The Order Processing Staff can handle orders (create, process, fulfill).
5
Figure 1: Inventory Management System Use Case Model
6
Use Case Name: Create Accounts
Create Accounts Summary: The admin creates accounts for users.
Use Case
Actor: Admin
Pre-Condition: The system is operational and accessible.
Main Sequence:
Alternative Sequences:
Step 3: If the entered information is invalid or misses required fields, the system prompts them to
correct the errors and resubmit the form.
Step 4: If the entered username or email address already exists in the system, the system informs the
user to choose a different one.
Step 4: If the system encounters a technical issue during account creation (e.g., database error), it
informs the user to try again later or contacts support for assistance.
Post-Condition: The user's account is successfully created and stored in the system's database.
7
Use Case Name: Manage Product Information.
Manage Product
Information Summary: The product manager manages product information.
1. The product manager accesses the product management section of the system.
2. The system displays a list of existing products with details such as name, description, SKU, price,
and quantity.
3. If the product manager wants to add a new product, he will select the option to add a new product.
4. The system presents a form to enter details for the new product, including name, description,
category, price, and initial quantity.
5. The product manager fills in the required information and submits the form.
6. The system validates the entered data and creates a new product entry in the database.
7. If the product manager wants to modify product, he will select the desired product from the list.
8. The system displays a form pre-filled with the current details of the selected product.
9. The product manager makes the desired changes to the product information (e.g., price, quantity,
description) and submits the form.
10. The system updates the product information in the database.
11. If the product manager wants to delete a product, he will select the desired product from the list.
12. The system prompts the product manager to confirm the deletion.
13. Upon confirmation, the system deletes the selected product from the database.
Alternative Sequences:
Step 6/ Step9: If the product manager enters invalid information while adding or editing a product,
the system prompts him to correct the errors before proceeding.
Step 6/ Step9: If the system encounters technical issues during product management operations (e.g.,
database error), it notifies the product manager and prompts him to try again later or contact support
for assistance.
Post-Condition: The product manager successfully manages product information, including adding,
editing, and deleting products as needed.
8
Use Case Name: Handle Orders.
Handle Orders Summary: The order processing staff handle orders.
Use Case
Actor: Order Processing Staff
Pre-Condition: The order processing staff have permission to access and
handle orders.
The system is operational and accessible.
Main Sequence:
1. The order processing staff access the order management section of the system.
2. The system provides an option to create a new order.
3. The order processing staff enter order details.
4. The system validates the entered information and generates a unique order ID for the new order.
5. After creating the new order, the system will check the availability of each product in the inventory
to ensure that enough are in stock to fulfill the order.
6. If all products are available, the order processing staff confirm product availability and proceeds.
7. The system updates the order status to "In Progress" and deducts the sold quantities of products
from the inventory.
8. Once the order is processed and products are available, the order processing staff prepare the
products for shipment or pickup, ensuring proper packaging and labeling.
9. The system updates the order status to "Completed" or "Shipped," indicating that the order has
been fulfilled and is ready for delivery.
Alternative Sequences:
Step 6: If any product in the order is unavailable or has insufficient quantity: The order processing
staff contact the customer to discuss alternatives.
Step 8: If the customer cancels the order before it is processed, the order processing staff update the
order status to "Cancelled" and restocks any deducted quantities of products back into the inventory.
Post-Condition: The order processing staff successfully handle the new order, from creation to
processing and fulfillment.
9
Use Case Name: Generate Reports.
Generate Reports Summary: The inventory manager generates reports.
Use Case Actor: Inventory Manager
Pre-Condition: The inventory manager has permission to access & generate
reports.
The system is operational and accessible.
Relevant data is available in the system's database for report generation.
Main Sequence:
1. The inventory manager accesses the reporting module of the Inventory Management System.
2. The inventory manager selects the type of desired report to generate from the available options.
3. Depending on the selected report type, the inventory manager sets parameters such as: date range,
products, categories, or locations to include in the report.
4. After setting the parameters, the inventory manager initiates the report generation process.
5. The system retrieves relevant data from the database based on the specified parameters.
6. Once the report is generated, the inventory manager reviews the report to ensure that it meets their
requirements and expectations.
7. The inventory manager may analyze the data presented in the report, identify trends, and draw
insights to inform decision-making.
8. The inventory manager can export the report to various formats such as PDF, Excel, or CSV for
further analysis or sharing with stakeholders.
Alternative Sequences:
Step 4: If the inventory manager requires a customized report that is not available as predefined
options, he may request assistance from the admin or IT support team to create a custom report.
Step 5: If the report data is outdated or needs to be refreshed, the inventory manager can trigger a data
refresh to ensure that the report reflects the latest information from the system's database.
Post-Condition: The inventory manager successfully generates the desired report from the Inventory
Management System, providing valuable insights into inventory status, sales performance, revenue
trends, or other relevant metrics.
10