Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Departement : RO

Level: 1st Year Computer science Engineering


Subject : ADS 1
Practical Work No: 2 Faculty of Mathematics
and Computer Science

Software Requirements Specification (SRS)


Title: Inventory Management System

1. Introduction
The Inventory Management System is a software application developed to assist small grocery
stores in efficiently managing their inventory. This document outlines the requirements for the
development of the system, including its features, functionality, user interface, and data structure.

2. Purpose
The purpose of the Inventory Management System is to provide a user-friendly interface for store
owners to add, update, and remove items from their inventory, as well as to display the current
inventory status accurately and efficiently.

3. Scope
The system will allow users to perform the following tasks:
- Add new items to the inventory
- Update existing items in the inventory
- Remove items from the inventory
- Display the current inventory status
4. Functional Requirements
4.1. Adding Items:
- The system shall prompt the user to enter details for the new item, including:
- Item name
- Quantity
- Price
- Upon confirmation, the item shall be added to the inventory.

1
4.2. Updating Items:
- The system shall allow the user to search for an item by its name.
- If the item is found, the user shall be prompted to update its quantity and/or price.
- The updated information shall be reflected in the inventory.

4.3. Removing Items:


- The system shall allow the user to search for an item by its name.
- If the item is found, the user shall have the option to remove it from the inventory.
- Upon confirmation, the item shall be removed from the inventory.

4.4. Displaying Inventory:


- The system shall provide an option to display the current inventory status.
- The inventory shall be displayed in a tabular format, including columns for item name, quantity,
and price.

4.5. Conditional Statements:


- The system shall use conditional statements to handle various scenarios, such as:
- Checking if an item already exists before adding it
- Displaying a message if an item is not found during a search

4.6. Logical Expressions:


- The system shall use logical expressions to handle complex conditions, such as:
- Checking if the quantity of an item is below a certain threshold to trigger a reorder

4.7. Switch Case:


- The system shall utilize switch case statements to provide the user with a menu of options for
managing the inventory.
4.8. Looping Statements:
- The system shall use looping statements to allow the user to perform multiple actions without
exiting the program after each operation.

2
4.9. Arrays and Data Structure:
- The system shall utilize a data structure to represent each item in the inventory. This data
structure shall be defined using a `typedef struct`.
- The data structure shall include the following fields:
- Item ID (integer)
- Item name (string)
- Quantity (integer)
- Price (float)
- An array of this data structure shall be used to store multiple items in the inventory.

5. Non-Functional Requirements
5.1. User Interface:
- The user interface shall be intuitive and easy to navigate.
- Clear prompts and instructions shall be provided to guide the user through each task.

5.2. Performance:
- The system shall perform efficiently, even with a large inventory dataset.
- Response times for user actions shall be minimal.

5.3. Reliability:
- The system shall handle errors and edge cases gracefully, providing informative error
messages when necessary.
- Data integrity shall be maintained, with proper validation and error checking mechanisms in
place.
6. Sample Input and Output
[Include sample input and output here to demonstrate the functionality of the system.]
7. Conclusion
The Inventory Management System is designed to streamline the inventory management process
for small grocery stores, providing a user-friendly interface for adding, updating, and removing
items from the inventory. By adhering to the requirements outlined in this document, the system
aims to meet the needs of store owners effectively.

3
------------------------------------------------------------------------------------------

Software Requirements Specification (SRS) break into milestones with specific deliverables

------------------------------------------------------------------------------------------

Milestone 1: Project Understanding and Data Structure Design


- Objective: Ensure students understand the project and design the data structure for
representing items in the inventory.
- Deliverable: Proposal of data structure design including a `typedef struct` for item
representation and explanation of how arrays will be used.

Milestone 2: Basic Functionality Implementation


- Objective: Implement basic functionality for adding, updating, and removing items while
ensuring proper use of conditional statements and logical expressions.
- Deliverable: Implementation of functions for adding, updating, and removing items with
appropriate use of conditional statements, logical expressions, and error handling.

Milestone 3: User Interface, Performance, and Final Testing


- Objective: Implement the user interface, test the system's performance, and validate reliability
and data integrity.
- Deliverable: Implementation of a user-friendly interface with clear prompts and instructions,
along with performance testing results and validation of reliability and data integrity.

Final Submission and Presentation


- Objective: Submit the completed Inventory Management System for evaluation and present the
project to the class.
- Deliverable: Source code along with documentation, presentation of the project to the class
explaining design choices and functionality, addressing questions and feedback.

You might also like