Software Final Lab Report Anni
Software Final Lab Report Anni
Submitted To:
Ferdaus Anam Jibon
Submitted by:
Group C
Serial Name ID
1|P a ge
"Online Shopping Inventory Management System"
2|P a ge
Table of Content
Chapter 1............................................................................................................................................ 6
Introduction ....................................................................................................................................... 6
1.2 System benefit:.............................................................................................................................. 7
1.3 Software Process model: .............................................................................................................. 8
Chapter 2............................................................................................................................................ 9
Requirement Engineering .................................................................................................................. 9
2.1 Requirements Engineering......................................................................................................... 10
2.2User requirement: ....................................................................................................................... 10
2.3 System Requirement: ................................................................................................................. 11
2.4 Functional Requirements .............................................................................................................. 13
2.5 Non-Functional Requirements ................................................................................................... 14
2.6 Use case diagram: ....................................................................................................................... 16
2.7Use case Text: .............................................................................................................................. 17
2.7.1 For User: ................................................................................................................................... 17
2.7.2 For Admin: .......................................................................................................................... 18
Chapter 3.......................................................................................................................................... 19
Analysis ............................................................................................................................................ 19
3.1 Analysis Modeling: ...................................................................................................................... 20
3.1.2 Activity Diagram: .................................................................................................................... 25
3.1.3 Swim Lane Diagram: .............................................................................................................. 26
3.1.4 Sequence diagram: .................................................................................................................. 27
3.1.5 Class Diagram: .......................................................................................................................... 28
3.2 Project Management .................................................................................................................. 29
3.3 Project planning and scheduling................................................................................................ 32
3.4 Project Estimation ...................................................................................................................... 39
3.5 System Quality Management for Online Shopping Inventory Management System ...................... 41
Chapter 4.......................................................................................................................................... 43
Designing .......................................................................................................................................... 43
4.1 Data Flow Diagram: ..................................................................................................................... 44
4.1.1Context Level Diagram: ............................................................................................................. 44
4.1.2Level 1 DFD:............................................................................................................................. 45
4.1.3 Level 2 DFD:............................................................................................................................ 46
4.2 ERD:............................................................................................................................................ 47
4.3 Database Field Design: ................................................................................................................. 48
3|P a ge
Chapter 6.......................................................................................................................................... 54
Conclusion ........................................................................................................................................ 54
6.1 Conclusion .................................................................................................................................. 55
6.2 Limitation of the Project ............................................................................................................ 55
Chapter 7.......................................................................................................................................... 56
Bibliography ..................................................................................................................................... 56
7.1 Book ............................................................................................................................................ 57
7.2 Websites ...................................................................................................................................... 57
Table of Figure
Figure 2.1: Use case diagram………………………………………………………………...16
Figure 3.1: Activity Diagram for Inventory………………………………………………...25
Figure 3.2: Swim lane Diagram……………………………………………………………...26
Figure 3.3: SequenceDiagram………………………………………………………………..27
Figure 3.4: ClassDiagram……………………………………………………………………28
Figure 3.5 : Effort Distribution……………………………………………………………...37
Figure 3.6: Detailed Effort Distribution…………………………………………………….37
Figure 3.7: Gantt Chart……………………………………………………………………...38
Figure3.8 : Milestone Timeline……………………………………………………………...38
Figure 4.1: Context Level Diagram…………………………………………………………44
Figure 4.2: Level1 DFD………………………………………………………………………45
Figure 4.3: Level2 DFD………………………………………………………………………46
Figure 4.4: ERD………………………………………………………………………………47
4|P a ge
List of Table
Table 3.1: CRC of Admin……………………………………………………………………20
Table 3.2: CRC of User………………………………………………………………………21
Table 3.3: CRC of Product…………………………………………………………………..21
Table 3.4: CRC of Order…………………………………………………………………….22
Table 3.5: CRC of Cart……………………………………………………………………...22
Table 3.6: CRC of Payment…………………………………………………………………23
Table 3.7: CRC of Inventory………………………………………………………………..23
Table 3.8: CRC of Notification……………………………………………………………...24
Table 3.2.1: Risk identification ……………………………………………………………..29
Table 3.2.2: Risk Analysis…………………………………………………………………...30
Table 3.2.3: Risk Planning…………………………………………………………………..31
Table 3.3.1: Identifying complexity(Transaction function)……………………………….33
Table 3.3.2: Identifying complexity(Data function)……………………………………….33
Table 3.3.3: Unadjusted function point contribution……………………………………..34
Table 3.3.4: Unadjusted function point contribution……………………………………..35
Table 3.3.5: Performance and Environmental Impact……………………………………36
Table 3.4.1: Draft cost……………………………………………………………………….39
Table 3.4.2: Personnel cost………………………………………………………………….39
Table 3.4.3: Software Cost………………………………………………………………….40
Table 3.4.4: Other Cost……………………………………………………………………..40
Table 3.4.5: Accounts table…………………………………………………………………41
Table 4.1: Database Table for users……………………………………………………….48
Table 4.2: Database Table for Messages…………………………………………………..48
Table 4.3: Database Table for Cart………………………………………………………..48
Table 4.4: Database Table for Admins…………………………………………………….48
Table 4.5: Database Table for products……………………………………………………49
Table 4.6: Database Table for Orders……………………………………………………...49
Table 4.7: Database Table for Wishlist…………………………………………………….49
5|P a ge
Chapter 1
Introduction
6|P a ge
1.1 Objective:
In the digital age, online shopping has become a major part of everyday life, allowing
people to purchase goods and services from the comfort of their homes. Managing a large
inventory efficiently is essential for any e-commerce platform to ensure customer
satisfaction and smooth business operations.
This project, Online Shopping &Inventory Management System, offers a comprehensive
solution for managing inventory in an online retail environment. It automates the tracking
and updating of product availability, helping both administrators and customers interact
with the system effectively.
The system provides an interactive website where administrators can add, update, or remove
products, manage stock levels, and monitor sales performance. Customers can browse
products by category, view detailed information, add items to their Wishlist, add items to
their cart, leave reviews and complete purchases using secure online payment methods.
Once a purchase is made, the system automatically updates the inventory, reflecting real-
time stock levels. It also includes features like order history, review or postdelivery support.
This system simulates a real-world e-commerce platform, offering users a realistic and
practical understanding of how online shopping and inventory management work together
to create a seamless shopping experience.
7|P a ge
1.3 Software Process model:
The process model for this software is selected as Waterfall process model.
Why we choosen:
Its process activities are well-defined, clearly separated, and logically organized.
This model is well-suited for smaller projects where the requirements are stable and
well-understood.
All project requirements have been clearly identified from the outset.
8|P a ge
Chapter 2
Requirement Engineering
9|P a ge
2.1 Requirements Engineering involves the processes that help determine the
business impact of a software system, identify customer needs, and understand how end-users
will interact with the software. It is defined by several key activities:
Gaining a clear understanding of the problems to be solved
Identifying and evaluating potential solutions
Specifying a solution that is testable, understandable, maintainable, and aligned with
project quality standards
2.2User requirement:
User:
3. User will be able to view product details, including price, description, and stock
availability.
Admin:
10 | P a g e
2.3 System Requirement:
User:
11 | P a g e
Admin:
1. Admin will be able to log in securely.
1.1 Admin must be an authorized user.
1.2 Admin login requires a username and password.
1.3 System logs admin login times for audit purposes.
2. Admin will be able to manage product listings.
2.1 Admin can add new products with full details.
2.2 Admin can update existing product information.
2.3 Admin can delete products from the catalog.
2.4 Admin can set product visibility (e.g., Active/Inactive).
3. Admin will be able to manage product categories.
3.1 Admin can create new categories.
3.2 Admin can edit or delete existing categories.
3.3 Admin can assign products to specific categories.
4. Admin will be able to view and manage customer orders.
4.1 Admin can view order details for all customers.
4.2 Admin can update order statuses (e.g., mark as shipped).
4.3 Admin can cancel or refund orders if necessary.
5. Admin will be notified of inventory and order updates.
6.1 Notification when product stock is low.
6.2 Notification when a new order is placed.
6.3 Notification when a product is out of stock.
6.4 Admin can delete or archive notifications.
12 | P a g e
2.4 Functional Requirements
User:
1. Register account
2. Login
4. Search products
8. Place orders
12. Logout
Admin:
1. Login
12. Logout
1. Product listings should load within 2 seconds per page (max 10 products per page).
Security:
4. Users must be authenticated before accessing sensitive features (e.g., checkout, order
history).
Usability:
2. The website shall be responsive and accessible on multiple devices (desktop, tablet,
mobile).
Reliability:
14 | P a g e
Maintainability:
1. The system shall be designed to allow easy updates to product listings and categories.
2. The codebase shall follow best practices to facilitate troubleshooting and future
enhancements.
15 | P a g e
2.6 Use case diagram:
16 | P a g e
2.7 Use case Text:
Use Case Title: Register Account Use Case Title: Search Products
Actor: User Actor: User
Description: User can create a new account Description: User can search for specific
by providing valid personal and login products using keywords.
information.
Use Case Title: Browse Products Use Case Title: Add to Cart
Actor: User Actor: User
Description: User can view available Description: User can add products to their
products categorized by type. shopping cart with specified quantities.
Use Case Title: Make Payment Use Case Title: View Order History
Actor: User Actor: User
Description: User can complete payment Description: User can view a list of their past
through available online payment methods. orders.
17 | P a g e
2.7.2 For Admin:
Use Case Title: Login Use Case Title: Update Order Status
Actor: Admin Actor: Admin
Description: Admin can log into the system with Description: Admin can change the status of
authorized credentials. orders (e.g., Shipped, Delivered).
Use Case Title: Add Product Use Case Title: View Reports
Actor: Admin Actor: Admin
Description: Admin can add new products to the Description: Admin can access and review
inventory sales and performance reports.
Use Case Title: Update Product Use Case Title: Monitor Inventory
Actor: Admin Actor: Admin
Description: Admin can update the details of Description: Admin can track stock levels
existing products. and be alerted when inventory is low.
Use Case Title: Delete Product Use Case Title: Manage User Accounts
Actor: Admin Actor: Admin
Description: Admin can remove products from Description: Admin can view, update,
the inventory. deactivate, or delete customer accounts.
Use Case Title: Manage Categories Use Case Title: Receive Notifications
Actor: Admin Actor: Admin
Description: Admin can add, edit, or delete Description: Admin receives alerts for new
product categories. orders and low stock notifications.
18 | P a g e
Chapter 3
Analysis
19 | P a g e
3.1 Analysis Modeling:
The online shopping inventory management system serves as a powerful tool for streamlining
product, order, and user management. While textual descriptions provide valuable insights, they are
not always the most effective way to represent software requirements. Therefore, analysis modeling
combines descriptive text with diagrams to illustrate data flow, system functions, and user behaviors
in a clear and structured manner. This approach enhances understanding and enables easier
validation of the system’s completeness, correctness, and consistency.
In the following sections, various use cases and system scenarios will be illustrated through
conventional and object-oriented analysis (OOA) techniques, including the use of Unified Modeling
Language (UML), to provide a comprehensive view of the system’s functionality and interactions.
3.1.1 CRC:
3.1.1.1 CRC for Admin
Responsibilities: Collaborations:
Login
Product
Add, update, delete product
Category
Manage categories
20 | P a g e
3.1.1.2 CRC for User
Responsibilities: Collaborations:
Register account
Login
Class Name:Product
Class Type:Entity
21 | P a g e
3.1.1.4 CRC for Order
Class Name:Order
Class Type:Entity
Responsibilities: Collaborations:
Class Name:Cart
Class Type:Entity
Responsibilities: Collaborations:
22 | P a g e
3.1.1.6 CRC for Payment
Class Name:Payment
Class Type:Properties
Responsibilities: Collaborations:
Class Name:Inventory
Class Type:Properties
Responsibilities: Collaborations:
23 | P a g e
3.1.1.8 CRC for Notification
Class Name:Notification
Class Type:Entity
Responsibilities: Collaborations:
24 | P a g e
3.1.2 Activity Diagram:
Activity Diagram for Inventory:
25 | P a g e
3.1.3 Swim Lane Diagram:
26 | P a g e
3.1.4 Sequence diagram:
27 | P a g e
3.1.5 Class Diagram:
28 | P a g e
3.2 Project Management
Software project management is the art and science of planning and leading software projects.
It is a sub-discipline of project management in which software projects are planned, monitored
and controlled.
29 | P a g e
Required training for staff is Moderate Tolerable
not available.(2.2)
Low Catastrophic
Organizational financial
problems force reductions in
the project budget.(3.1)
Risk Strategy
Organizational financial Prepare briefing documents for senior management showing how
Problems the project is making a very important contribution to the goals of
business and presenting reasons why cuts to the project budget
would not be cost-effective.
Staff illness Reorganize them so that there is more overlap work and people
therefore understand each other jobs.
30 | P a g e
Underestimated Investigate buying in component; investigate use of a program
development time generator.
A re-planning of the project occurs. New task schedule and milestones are defined.
Staffs work on their assigned jobs within the new timeframe.
In order to prevent this from happening, the software will develop with the end user
in mind.
The user-interface will design in a way to make use of the program convenient and
pleasurable.
Meetings (formal and informal) will be held with the stakeholders regularly. This
insures that the product we are producing solves a problem.
The development cost of the software may increase by 20%.Consult with the System
Analyst during the system analysis, design and testing phase of the software project
Proper coding grammar is followed to make sure that the codes are easily
understandable and reusable.
Cost and Time will increase. Project will be modified. Everything will be at where it
all started.
31 | P a g e
3.3 Project planning and scheduling
3.3.1 Function Point Estimation:
3.3.1.1 Identifying complexity:
32 | P a g e
Fields- Order ID, Tracking ID, Status
11. Track Order(EQ) 1 3
File Name –Orders
1. Users(ILF-
Internal Logical Fields- ID, Name, Email, Password 1 4
File)
33 | P a g e
3.3.1.2 Unadjusted function point contribution
1. Register Low 3
Account(EI-External 1 6
Input)
2. Login(EI) 1 4 Low 3
5. Logout(EI) 1 1 low 3
7. Notifications(EO) 2 3 Low 4
9. Product Low 4
3 4
Recommendations(EO)
Total 44
34 | P a g e
Data function RETs DETs Complexity UFP
1. Users(ILF- Low 7
Internal Logical 1 4
File)
Low 7
2. Products(ILF) 1 7
3. Orders(ILF) 1 8 Low 7
4. Wishlist(ILF) 1 6 Low 7
6. Shipping 1 3 Low 5
Integration APIs(EIF)
38
Total
35 | P a g e
3.3.1.3 Performance and Environmental Impact
GSC TDI
1. Data communication 2
3. Performance 5
5. Transaction Rate 1
7. End-user Efficiency 3
8. Online Update 3
9.Complex Processing 1
10.Reusability 2
11.Installation Ease 4
12.Operrational Ease 4
13.Multiple Sites 3
14.Facilitate Change 2
UPF = UPF (Data function) + UPF (Transaction function) Visual Basic 08.50
=28+38 = 66=
= (38+44) 82 Java 10.6
SQL 10.8
Adjusted function point count (AFP) = (UFP * VAF)
==(66*1)
(82*1) = 82 C++ 12.4
= 66
C 13.0
==66
1271 person hours / 6 hours
* 15.5
= =211.833
1023 perperson
hours days / 16 days PHP 15.5
=13.24 person months / 5 persons
= 127.875 person days
=2.65 months for 5 persons COBOL 16.8
Approx. 128 person
Approximately 3 Months required for 5
days
persons to finish the project
36 | P a g e
3.3.1.4 Effort Distribution:
37 | P a g e
3.3.1.6 Project Gantt Chart
38 | P a g e
3.4 Project Estimation
Budget Estimation
Personnel $20,000
Miscellaneous $500
Total $23,000
39 | P a g e
3.4.2 Hardware cost:
Extra 1,000.00
70,000.00 /=
Hardware Cost –
Computer 3,335.00
Scanner 134.40
Printer 266.80
3,736.20 /=
40 | P a g e
Other Costs-
Furniture 6,000.00
House Rent 4,000.00
Electricity bill 600.00
Vehicle Rent 500.00
Extra 1,000.00
12,100.00 /=
Total cost 85,836.20 /=
Agreement on quality requirements and clear communication of what constitutes “quality” are
essential for ensuring that the final product meets user expectations. In the context of the
Online Shopping Inventory Management System, understanding and formally defining the
various aspects of software quality are critical.
The quality characteristics of the system—such as reliability, usability, security, and
performance—must be explicitly stated in the software requirements. These characteristics
serve as the foundation for defining measurable quality metrics and setting the acceptance
criteria for validating the product.
SQA Methods Used
Peer code reviews
CI pipeline via GitHub Actions
ISO 9126 alignment for usability and maintainability
Testing Strategies
Unit Testing: Jest (frontend), Mocha (backend)
Integration Testing: Postman, Super test
System Testing: Full process validation (e.g., add → purchase → report)
Acceptance Testing: Final approval from end-users
Regression Testing: Automated CI-based
Justification for Testing Methods
High modularity → Easy unit tests
Automation → Efficient iteration
Regression tests → Reliable updates
CI pipelines → Continuous delivery confidence
41 | P a g e
Key Software Quality Management Processes Applied:
42 | P a g e
Chapter 4
Designing
43 | P a g e
4.1 Data Flow Diagram:
4.1.1Context Level Diagram:
Online shop
& inventory
management
system
44 | P a g e
4.1.2Level 1 DFD:
45 | P a g e
4.1.3 Level 2 DFD:
46 | P a g e
4.2 ERD:
47 | P a g e
4.3 Database Field Design:
4.3.1 Database Table for users:
48 | P a g e
4.3.5Database Table for Products:
49 | P a g e
5.1 Testing:
Testing is a structured and systematic process that can be planned in advance to ensure the
reliability and functionality of a system. It typically starts at the module level and progresses
through the integration of the complete computer-based system. No software development
process is complete without thorough testing, as it plays a crucial role in the system’s success.
The primary objective of testing is to identify errors and verify that the system behaves as
expected. A well-designed test case is one that effectively uncovers potential defects that may
not have been previously detected. Ultimately, testing aims to improve software quality by
ensuring that all components function correctly and meet the specified requirements.
Test scenario: Guest user can browse products and successfully add them to the shopping cart.
50 | P a g e
Test case 2: Registered User Placing an Order
51 | P a g e
Test case 3: Store Manager Updating Product Inventory
2. Go to Inventory Do Pass
inventory management
section interface is
displayed
3. Select a Do Pass
Product details
product
are shown
52 | P a g e
Test Case 4: System Handling Out-of-Stock Items During Order Placement
53 | P a g e
Chapter 6
Conclusion
54 | P a g e
6.1 Conclusion
My project is a humble effort aimed at fulfilling the essential needs of an Online Shopping
Inventory Management System. Several user-friendly and efficient coding practices have been
adopted to enhance the functionality and usability of the system. This software package is
expected to serve as a powerful tool in meeting the various requirements of users in an online
shopping environment.
The primary objective of software planning in this project is to provide a solid framework that
enables the project manager to make realistic estimations within a limited timeframe. These
estimations are intended to be refined and updated as the development process advances,
ensuring accuracy and adaptability throughout the project lifecycle.
Although I could not implement every planned feature due to time constraints, I have made a
dedicated effort to ensure the system is functional, stable, and user-centric. As my experience
in software development grows, I aim to continuously enhance and expand this system in every
possible way. I hope this software proves beneficial to its users and provides a comprehensive
understanding of how an online shopping and inventory system operates in a real-world
scenario.
Within this limited period, it was difficult to fully understand the underlying problems, gather
comprehensive requirements, and build a fully-featured system. This time limitation
significantly impacted the ability to explore advanced features and optimize the system to its
full potential. Additionally, several challenges were encountered during the data collection
phase, which further hindered the development process. Despite these limitations, every effort
was made to ensure the system is functional and provides a solid foundation for future
enhancements.
55 | P a g e
Chapter 7
Bibliography
56 | P a g e
7.1 Book
7.2 Websites
https://www.google.com.bd
http://www.php.net/
http://php.net/manual/en/book.pdo.php
https://ellislab.com/codeigniter
http://www.tutorialspoint.com/
https://www.youtube.com/
http://www.w3school.com/
http://www.stackoverflow.com/
http://www.codeacademy.com/
https://www.visual-paradigm.com/
https://chatgpt.com/
57 | P a g e