Software Engineering
Software Engineering
In partial fulfillment of the requirement for the Bachelor Degree in Computer Science
and Information Technology
SAJILO RENT
A PROJECT REPORT
Submitted to:
Department of Computer Science and Information Technology
Submitted by:
Nisha Lamichhane (79011296)
Pratikshya Ale Magar(79011306)
Nisha Adhikari(79011294)
Ojaswi Oli (79011298)
Date of Submission: 9th January, 2026
1|Page
ACKNOWLEDGEMENT
Apart from the efforts of all the team members, the section of the project report topic depends
largely on the inspiration and guidance of our teachers. We take this opportunity to express our
gratitude to the teachers who have been instrumental in the approval of this project topic.
We would like to show our greatest appreciation to Mr. Ramesh Singh Saud. We thank all
enough for their tremendous support and help. They motivated and encouraged us every time
while selecting project topic and helping us during the project. With their help, we are
continuously improving our project.
2|Page
Abstract
SajiloRent is a Business-to-Customer (B2C) web-based rental management system developed to
simplify and automate the process of renting goods through an online platform. In traditional rental
systems, customers are required to physically visit rental stores to check item availability, pricing,
and rental terms, while administrators manually maintain records of bookings and inventory. This
approach is inefficient, time-consuming, and prone to human errors.
The SajiloRent system addresses these challenges by providing a centralized digital platform
where users can browse rental items across multiple categories such as wedding and fancy clothes,
furniture, decorative items, and biking and hiking gear. The system allows registered users to view
detailed product information, select rental durations, and place rental bookings efficiently. An
administrative module is incorporated to manage product listings, categories, and booking records
in a secure manner.
This project follows the Software Development Life Cycle (SDLC), including requirement
analysis, system design, implementation, and testing. Various software engineering tools and
techniques such as use case diagrams, entity relationship diagrams, data flow diagrams, and test
case analysis have been applied to ensure systematic development. The system is implemented
using modern web technologies and emphasizes usability, security, and maintainability. SajiloRent
demonstrates how software engineering principles can be effectively applied to develop a real-
world application that improves accessibility, reduces manual effort, and enhances the overall
rental experience.
3|Page
Table of Contents
ACKNOWLEDGEMENT .............................................................................................................. 2
Abstract ........................................................................................................................................... 3
1. INTRODUCTION ...................................................................................................................... 6
1.1 Introduction ........................................................................................................................... 6
1.2 Problem Statement ................................................................................................................ 6
Traditional rental businesses in Nepal operate largely manually or through semi-digital
systems. Customers must visit shops physically to check availability, pricing, and rental
durations, making comparison and booking inconvenient and time-consuming. Manual
systems lack real-time updates, often causing miscommunication. ........................................... 6
1.3 Objectives ............................................................................................................................. 7
1.4 Scope and Limitations........................................................................................................... 7
1.4.1 Scope .............................................................................................................................. 7
1.4.2 Limitations ..................................................................................................................... 8
3. SYSTEM ANALYSIS ................................................................................................................ 9
3.1 Feasibility Study ............................................................................................................... 9
3.1.1 Technical Feasibility ...................................................................................................... 9
3.1.2 Economic Feasibility ..................................................................................................... 9
3.1.3 Operational Feasibility ................................................................................................. 10
3.1.4 Schedule Feasibility ..................................................................................................... 10
3.2 Requirement Analysis ......................................................................................................... 11
3.2.1 Stakeholders of the System .......................................................................................... 11
3.2.2 Development Methodology ......................................................................................... 11
3.2.3 Functional Requirements ............................................................................................. 12
3.3.3 Non-Functional Requirements ..................................................................................... 15
3.3.1 Data Modeling ............................................................................................................. 16
3.3.2 Process Modeling ......................................................................................................... 17
5. SYSTEM DESIGN ................................................................................................................... 20
5.1 Class Diagram ..................................................................................................................... 20
5.2 Sequence Diagram .............................................................................................................. 20
5.3 User Interface Design ......................................................................................................... 22
6. IMPLEMENTATION AND TESTING ................................................................................... 24
6.1 Implementation ................................................................................................................... 24
4|Page
6.1.1 Technology Stack Used ............................................................................................... 24
6.1.2 Implementation Details of Modules............................................................................ 24
6.2 Testing................................................................................................................................. 27
6.2.1 Test Cases for Unit Testing.......................................................................................... 27
6.2.2 Test Cases for System Testing ..................................................................................... 28
6.2.3 Admin Navigation Testing ........................................................................................... 30
CONCLUSION AND FUTURE RECOMMENDATION ........................................................... 32
Conclusion ................................................................................................................................ 32
Future Recommendation ........................................................................................................... 33
References ..................................................................................................................................... 34
Screenshots ................................................................................................................................... 35
Homepage ................................................................................................................................. 35
................................................................................................................................................... 35
Product section .......................................................................................................................... 36
Register Page ............................................................................................................................ 37
5|Page
1. INTRODUCTION
1.1 Introduction
With the rapid growth of digital technologies and e-commerce in Nepal, accessing goods and
services has become increasingly digital. Rising internet availability, smartphone usage, and
digital payment adoption have encouraged businesses to shift online. Renting, rather than
purchasing, is gaining popularity due to high living costs, limited urban storage, and cost-
conscious consumption. Many items, such as wedding attire, furniture, decorative items, or
adventure gear, are needed only short-term, making outright purchase inefficient.
SajiloRent is an online B2C rental platform designed to address these challenges. It provides a
centralized marketplace where users can browse, book, and rent products conveniently with
transparent pricing. The platform covers four main categories: Wedding & Fancy Clothes,
Furniture, Decorative Items, and Biking & Hiking Gear, reducing fragmentation in traditional
rental services.
Traditional rental businesses in Nepal often rely on manual or spreadsheet-based systems, leading
to inefficiencies such as tracking issues, booking errors, and poor customer experience. SajiloRent
replaces these manual processes with a user-friendly online system offering categorized browsing,
secure payments, flexible rental durations, and delivery/return management. Administrators
benefit from inventory management, order tracking, and user monitoring, ensuring scalable,
secure, and maintainable operations. Overall, SajiloRent promotes a convenient, cost-effective,
and digital rental culture in Nepal.
6|Page
1.3 Objectives
The main objective of the SajiloRent system is to design and develop a web-based rental
management platform by applying software engineering principles and methodologies. The
specific objectives of the system are as follows:
To analyze the existing manual rental processes and identify their limitations.
To design a user-friendly online system that allows customers to browse rental items by
category.
To enable users to view detailed product information and select rental durations.
To implement a secure user authentication mechanism for system access.
To provide an administrative interface for managing rental items, categories, and
bookings.
To store and manage rental data efficiently using a database system.
To provide a responsive and intuitive website interface suitable for both desktop and
mobile users.
To include features such as search, filtering, and sorting to help users easily find rental
items.
To apply the Software Development Life Cycle (SDLC) in the development of the
system.
To improve transparency, efficiency, and convenience in the rental process for both
customers and administrators.
Each objective is defined to ensure that the system meets user requirements while demonstrating
the practical application of software engineering principles.
It enables administrators to manage inventory, track bookings and returns, and maintain
rental records efficiently.
It provides real-time updates on item availability and booking status to improve
transparency and reliability.
7|Page
It ensures efficient data management using a structured database system.
It is designed to be scalable and maintainable, allowing for future expansion such as
additional categories or enhanced reporting features.
It improves the efficiency and convenience of the rental process for both customers and
administrators, replacing traditional manual methods.
1.4.2 Limitations
While SajiloRent provides a convenient and centralized online rental platform, the system has
certain limitations that define its current scope and constraints.
The platform currently supports only four rental categories: Wedding & Fancy Clothes,
Furniture, Decorative Items, and Biking & Hiking Gear.
Delivery and return services are limited and do not have full real-time tracking.
The system requires a stable internet connection; offline bookings are not possible.
Accurate data entry by administrators is essential; errors may affect inventory and
availability.
Customer support and issue resolution are handled manually, which may cause delays.
Advanced analytics, recommendation features, and reporting tools are not included in the
current version.
Despite these limitations, SajiloRent provides a significant improvement over traditional manual
rental systems by offering centralized management, transparency, and ease of access for
customers and administrators.
8|Page
3. SYSTEM ANALYSIS
The SajiloRent platform will be developed to meet user needs and provide a seamless online rental
experience. The system will be implemented using HTML, CSS, JavaScript, PHP, and MySQL,
ensuring a robust and scalable solution. Key features include management of rental items and
customer details, inventory tracking, booking and order management, and search and filter
functionalities to help users find items easily.
The system will provide a user-friendly interface for customers to browse, book, and rent items,
while administrators will have tools for efficient inventory control, rental monitoring, and
transaction management. SajiloRent aims to replace manual rental operations with a centralized,
automated, and transparent online solution, enhancing both user convenience and operational
efficiency.
9|Page
3.1.3 Operational Feasibility
SajiloRent is operationally feasible because it makes the rental process easier for both customers
and administrators. Customers can browse items, check availability, select rental durations, and
book online without visiting rental shops physically. Administrators can manage inventory, track
bookings, and monitor returns more efficiently than with manual systems. The website is simple
and user-friendly, so both customers and staff can use it without much training. It works with
regular internet and devices, making it practical for use in Nepal. Overall, SajiloRent is easy to
operate and helps save time, reduce errors, and improve the overall rental experience.
The schedule feasibility of SajiloRent assesses whether the system can be developed within
a reasonable and manageable timeframe. The project follows the Waterfall software
development model, which organizes the process into sequential phases: requirement
analysis, system design, implementation, testing, and deployment. Each phase is planned
with a defined timeline, and a phase must be completed before the next one begins,
ensuring structured progress and reducing risks of rework. Since the team has the necessary
skills and uses widely available technologies like [Link], [Link], and MongoDB, the
project can be completed efficiently within the semester schedule. Overall, using the
Waterfall model ensures that SajiloRent is schedule-feasible, allowing systematic
development while maintaining quality and functionality.
10 | P a g e
3.2 Requirement Analysis
Requirement analysis is a crucial phase of the Software Development Life Cycle (SDLC) in which
the needs and expectations of stakeholders are identified, analyzed, and documented. For the
SajiloRent system, requirements were gathered by analyzing the existing rental process and
identifying the functional and non-functional needs of both users and administrators. This phase
ensures that the system is developed according to clearly defined specifications and minimizes
ambiguities during implementation.
End Users (Customers): Individuals who browse rental items, view product details, and
place rental bookings.
Administrator: Responsible for managing products, categories, users, and booking records.
System Developer: Designs, develops, and maintains the system.
11 | P a g e
Fig : Waterfall Model
The functional behavior of the SajiloRent system is represented using a use case diagram, which
illustrates interactions between system actors and the functionalities provided by the system. Use
case modeling helps in clearly understanding system requirements from the user’s perspective and
acts as a foundation for further system design and develop
User (Customer):
12 | P a g e
A user who registers on the platform, browses rental items, views product details, selects rental
durations, and places rental bookings.
Admin:
A system administrator responsible for managing rental items, categories, and booking
records.
Register
Login
Browse Rental Items
View Product Details
Select Rental Duration
Place Booking
Logout
Admin Login
Add Rental Item
Update Rental Item
Delete Rental Item
View Booking Records
ManageCategories
Each use case represents a specific functionality that the system must provide to meet user and
administrative requirements.
13 | P a g e
Fig: UseCase Diagram
14 | P a g e
3.3.3 Non-Functional Requirements
Non-functional requirements define how the system performs rather than what it does. They play
a vital role in determining system quality and reliability.
Usability
User-Friendly Interface: The SajiloRent platform must provide an intuitive and easy-to-use
interface that allows users to browse rental items, view product details, and place rental
bookings with minimal effort.
Accessibility: The system should be designed to be accessible to a wide range of users,
including those with basic technical knowledge, by following standard web accessibility
practices.
Responsive Design: The application must be responsive and compatible with multiple
devices such as desktops, tablets, and smartphones, ensuring a consistent user experience
across different screen sizes and browsers.
Clear Navigation: The platform should include clear menus and navigation paths so users
and administrators can easily access required features without confusion.
System Availability: SajiloRent should maintain high availability so that users can access
the system reliably during normal operating hours.
Error Handling: The system must implement proper error handling mechanisms to manage
unexpected inputs, system failures, or network issues without crashing.
Data Consistency: Rental bookings, user information, and product records must be stored
accurately to avoid data inconsistency.
Backup and Recovery: Regular backups of critical data should be maintained to prevent
data loss in case of system failure.
Performance
Response Time: The system should load pages within an acceptable time to provide a
smooth user experience and avoid delays during browsing or booking.
Scalability: The system should be capable of handling an increasing number of users and
rental items without significant performance degradation.
Efficient Booking Process: Rental booking and cart operations should be processed
efficiently to ensure timely confirmation and accurate cost calculation.
Security
Data Protection: User credentials and sensitive information must be stored securely using
encryption and secure storage techniques.
Authentication and Authorization: The system must implement proper authentication
mechanisms to verify users and role-based authorization to restrict administrative features.
Secure Sessions: User sessions should be securely managed to prevent unauthorized
access.
15 | P a g e
Privacy Compliance: The system should ensure user data privacy by following standard
data protection practices and ethical guidelines.
Fig: ER-Diagram
16 | P a g e
3.3.2 Process Modeling
Process modeling is used to describe how data flows through the SajiloRent system and how
different processes interact with users and data stores. Context-level and Level 1 Data Flow
Diagrams (DFDs) are used to represent the system’s functional behavior. The context diagram
provides a high-level overview of interactions between external entities and the system, while
Level 1 DFDs for Admin and Customer illustrate detailed processes such as product management,
booking handling, and information retrieval. This modeling approach helps in understanding
system operations and ensures logical and efficient process flow.
17 | P a g e
[Link] DFD Level 1 for Admin
The Level 1 Data Flow Diagram for the Admin in SajiloRent illustrates how the administrator
interacts with key system processes. It shows processes such as managing products, categories,
bookings, and delivery status, along with generating reports. The diagram also highlights the
flow of data between the Admin and system data stores, including Product, Category, Booking,
and Delivery databases. This provides a clear overview of the admin’s role in controlling and
monitoring system operations.
The Level 1 Data Flow Diagram for the Customer in SajiloRent depicts how customers interact
with the system to perform key rental activities. It includes processes such as user registration and
login, browsing products, placing bookings, making payments, and viewing booking status. The
diagram also shows the flow of data between the customer and system data stores, including
Customer, Product, Booking, and Payment databases. This provides a clear understanding of how
customer requests are processed and how information is managed within the system.
18 | P a g e
[Link] DFD Level 1 for Customer
The Level 1 Data Flow Diagram for the Customer in SajiloRent depicts how customers interact
with the system to perform key rental activities. It includes processes such as user registration
and login, browsing products, placing bookings, making payments, and viewing booking status.
The diagram also shows the flow of data between the customer and system data stores, including
Customer, Product, Booking, and Payment databases. This provides a clear understanding of
how customer requests are processed and how information is managed within the system.
19 | P a g e
5. SYSTEM DESIGN
The system design phase of SajiloRent focuses on converting the functional and non-functional
requirements into a concrete blueprint that guides the implementation of the application. This phase ensures
that the system is well-structured, efficient, and user-friendly, while also providing a clear framework for
development, testing, and maintenance.
20 | P a g e
processes are correctly implemented, synchronized, and that all functional requirements are
covered.
21 | P a g e
5.3 User Interface Design
The user interface design focuses on creating an intuitive, visually appealing, and responsive
interface for the SajiloRent web application. It includes the design of key screens such as the
Homepage, Category Pages, Product Details, Booking Forms, Cart and Checkout, and Admin
Management Panels. The design emphasizes user convenience by providing easy navigation,
clear categorization, search and filter options, and real-time feedback. It also considers
accessibility, ensuring that users can efficiently interact with the system regardless of their
technical expertise. Effective UI design improves user satisfaction, reduces errors, and enhances
the overall user experience.
22 | P a g e
Fig: User Interface (Register Page )
23 | P a g e
6. IMPLEMENTATION AND TESTING
6.1 Implementation
The implementation phase is a crucial stage in the development of the SajiloRent system, where the
proposed system design is transformed into a functional and operational application. This phase focuses
on converting system requirements, design specifications, and planned architecture into actual working
software using appropriate tools and technologies. During this phase, modern web technologies such as
[Link] for frontend development, [Link] and [Link] for backend services, and MongoDB for
data storage were used to ensure seamless interaction between different system components
- Frontend Technologies
Tailwind CSS – Used for styling and layout to ensure a clean and modern design.
-- Backend Technologies
24 | P a g e
Key Features:
Profile management.
Logout functionality.
This module ensures a secure and personalized experience for each user.
- Product Module
Key Features:
This module allows users to easily browse and select rental items.
- Booking Module
The Booking Module handles the complete rental process.
25 | P a g e
Key Features:
Booking confirmation.
26 | P a g e
6.2 Testing
Software Testing is the process of evaluating a software system to ensure that it functions
correctly and meets the specified requirements. Before deploying a web-based application, it is
essential to thoroughly test its functionality, performance, and security aspects. Testing helps
identify defects, ensure system stability, and improve overall software quality.
For the SajiloRent system, test cases were designed and executed to verify the correctness of
core functionalities such as user authentication, rental booking, cart management, and
administrative operations. The system was tested across different web browsers to ensure
consistent behavior and compatibility. Special focus was given to functional testing and basic
security validation.
27 | P a g e
field left
empty
28 | P a g e
Test Executed By: Test Title: Verifying the process of adding
SajiloRent Development Team rental items
Test Executed By: SajiloRent Development Test Title: Verifying cart and wishlist
Team functionality
29 | P a g e
Step Test Steps Test Data Expected Result Actual Status
Result
6 Navigate to User Admin clicks “User Redirect to user Redirected to user Pass
Management Management” management management page
menu page
30 | P a g e
Description: Test the process of renting an item
All unit and system test cases for the SajiloRent system were executed successfully. The results
confirm that the system meets its functional requirements and performs reliably under normal
usage conditions. No critical defects were observed during testing, and minor issues identified
were resolved during development. The successful execution of test cases ensures that the system
is stable and ready for deployment.
31 | P a g e
CONCLUSION AND FUTURE RECOMMENDATION
Conclusion
SajiloRent successfully demonstrates the development of a comprehensive and reliable web-
based rental management system that addresses the challenges of traditional rental services in
Nepal. Traditional rental processes are often manual, time-consuming, and prone to errors, with
limited transparency for customers and inefficient record-keeping for administrators. SajiloRent
provides a centralized B2C platform that connects customers with multiple rental categories such
as wedding and fancy clothes, furniture, decorative items, and biking and hiking gear offering
convenience, affordability, and flexibility in renting items for short-term use.
The system was developed using the Waterfall model, following a structured software
engineering approach that ensured systematic planning, analysis, design, implementation, and
testing. During the planning and analysis phases, the project scope, objectives, and requirements
were clearly defined, and feasibility studies were conducted to ensure technical, economic, and
operational viability. In the system design phase, ER diagrams, class diagrams, and sequence
diagrams were created to model the system’s structure and behavior, while user interface designs
were developed to provide an intuitive and accessible platform for both customers and
administrators.
Implementation involved developing a secure and scalable web application using modern
technologies, with the backend managing inventory, bookings, and deliveries, and the frontend
offering a responsive, user-friendly interface. The testing phase ensured the system’s
functionality, reliability, and security, while the documentation phase captured all design,
implementation, and testing details for future maintenance and reference.
SajiloRent provides a seamless experience for users, allowing them to browse products, view
detailed information, make bookings, and track deliveries efficiently. For administrators, the
platform offers tools for managing products, categories, bookings, and deliveries, ensuring
smooth operations and accurate data management. The platform also leverages multiple revenue
streams, including rental fees, delivery charges, and subscription plans, making it economically
sustainable and scalable for future growth.
By integrating structured software engineering principles with practical real-world requirements,
SajiloRent not only addresses the current gaps in Nepal’s rental market but also lays a foundation
for future digital rental services. With opportunities for expansion, increased adoption of shared-
economy services, and growing demand for convenient online platforms, SajiloRent has the
potential to become a trusted and widely used rental marketplace in Nepal. Overall, the project
demonstrates a successful application of software engineering methodologies to create an
innovative, user-centric, and efficient system that benefits both customers and administrators.
32 | P a g e
Future Recommendation
While SajiloRent effectively provides a centralized online rental platform, several improvements
can be made to enhance usability, scalability, and maintainability, in line with software
engineering best practices. One key recommendation is the development of a dedicated mobile
application for Android and iOS, allowing customers to browse, book, and track rentals on the
go. Integrating push notifications can further improve user engagement by providing real-time
updates on bookings, deliveries, and promotions. Expanding payment options to include
additional e-wallets, bank transfers, and international gateways would increase accessibility and
convenience for a broader user base.
To enhance system reliability and operational efficiency, real-time inventory management should
be implemented to prevent double bookings and maintain accurate availability. Incorporating a
rating and review system will increase transparency and trust, while advanced search filters, AI-
driven product recommendations, and personalized suggestions can improve user experience and
encourage repeat usage. For administrators, analytics and reporting tools can provide insights
into rental trends, customer behavior, and system performance, enabling data-driven decision-
making and better resource management.
From a long-term software engineering perspective, SajiloRent should adopt a modular and
scalable architecture, which allows the platform to accommodate more rental categories,
vendors, and multi-city expansion within Nepal. Implementing robust security measures and
ensuring maintainable code practices will improve system longevity and adaptability.
Additionally, incorporating sustainability-focused features, such as eco-friendly product
categories or incentives for longer rentals, can align the platform with responsible consumption
trends. These enhancements will ensure that SajiloRent remains efficient, user-centric, and
capable of evolving with future technological and market demands.
33 | P a g e
References
[5] D. H. Chau and M. Chen, “B2C E-Commerce Platforms: Challenges and Best
Practices,” IEEE Access, vol. 7, pp. 16745–16756, 2019.
34 | P a g e
Screenshots
Homepage
35 | P a g e
Product section
36 | P a g e
Register Page
37 | P a g e