Professional Documents
Culture Documents
Final Hard Documantation
Final Hard Documantation
A PROJECT REPORT
Submitted to
Department of Computer Application
Itahari Namuna College
Submitted by
Name: Roshan Shrestha
Name: Anil Diyali
December, 2023
i
TRIBHUVAN UNIVERSITY
SUPERVISOR’S RECOMMENDATION
I hereby recommend that this project prepared under my supervision by Roshan Shrestha
and Anil Diyali entitled “HOUSE RENTAL SYSTEM” in partial fulfilment of the
requirements for the degree of Bachelor’s in Computer Application is recommended for
the final evaluation.
Saroj Ojha
Project Supervisor
Itahari Namuna College
Itahari-8, Sunsari
ii
TRIBHUVAN UNIVERSITY
LETTER OF APPROVAL
This is to certify that this project prepared by Roshan Shrestha and Anil Diyali entitled
“HOUSE RENTAL SYSTEM” in partial fulfilment of the requirements for the degree of
Bachelor’s in Computer Application has been evaluated. In our opinion it is satisfactory in
the scope and quality as a project for the required degree.
iii
ACKNOWLEDGEMENT
The success and final outcomes of this project requires a lot of guidance and assistance
from many people and are very fortunate to have this all along the completion of this
project. We would like to express our gratitude and appreciation to all those who gave us
the possibility to complete this project. We are very glad to express our deepest sense of
gratitude and sincere thanks to our supervisor Saroj Ojha and project teacher Mr.Saman Kc
whose contribution in simulating suggestions and encouragement helped us in completing
our project.
We are also thankful to Mr. Nabin Shrestha, HOD, Itahari Namuna College and Mr.
Dharma Neupane, Principal, Itahari Namuna College for encouraging and guiding us
throughout the completion of this project. All useful suggestions for this whole work and
co-operative behavior are sincerely acknowledged.
Last but not the least, many thanks go to our teachers, friends, guardians who directly or
indirectly helped us in achieving the goal. We would like to appreciate all the guidance and
support, which helped in completion of this project. Special thanks to their comment and
advices.
iv
ABSTRACT
This is a project report for the project entitled "House Rental System". This is an web
application developed aiming all the rental company to use this application and make
flexible or helpful for customer to renting the House online.
We are stuck with technology when want is just stuff that works. With the current paradigm
shift in the technological field, there is an urgent need to embrace and appreciate the power
of technology. The housing sector remains vigilant to face the challenges of change by
employing a new strategy that facilitates easy management of rental houses. Hence there is
a need to develop a rental house management system that can simplify work for the rental
managers so that all their work can be efficient and effective.
v
TABLE OF CONTENTS
ACKNOWLEDGEMENT .................................................................................................. iv
ABSTRACT......................................................................................................................... v
LIST OF FIGURE.............................................................................................................viii
1.3 Objectives........................................................................................................ 1
1.4.2 Limitation......................................................................................................... 2
4.1 Implementation.................................................................................................... 22
REFERENCES .................................................................................................................. 29
APPENDICES ................................................................................................................... 30
viii
LIST OF TABLES
Database Table
Table 4.1: User Table …………….………………………….….……..………...…....50
ix
LIST OF ABBREVIATIONS
x
CHAPTER 1: INTRODUCTION
1.1 Introduction
Nowadays monitoring a place or a facility is not as easy as we think. We need to inspect a
place or go for an ocular visit to find an available property. As we observed the process of
monitoring a place to rent is somewhat heavy As an IT student, we can suggest an
Automated House Rental System. This System can make a huge impact, especially in the
comfortability of monitoring one’s finding home.
1.3 Objectives
• To Transform the manual process of renting a house to an online and computerized
system
• To validate the house rental system using user feedback and testimonies
• To produce the documentation such as Software Requirement specification, Software∙
Design Description and Software Development References
• Real Estate Company: This includes a study on how the Real Estate business is
being done, the processes involved, and opportunities that exist for improvement.
• PHP Technology used for the development of the application.
• General customers as well as the company’s staff will be able to use the system
effectively.
• Web Platform means that the system will be available for access 24/7 except when
there is a temporary server issue which is expected to be minimal.
1
• Existing Systems: This involves studying the existing systems and learning their
weakness hence developing a new system to cater to the challenges the local and
world domains face when dealing with house rental issues.
1.4.2 Limitation
• Members have to visit Rental Company for buying houses.
• Online payment is not available.
• It requires internet to use it.
- Anil Diyali will be involved in interactions with the users for requirement
determinations. He will help in physical design of pages and contents. He will also
help in coding and testing of the system. He will collect the facts and figure required
for improvement of the system.
- Roshan Shrestha will mostly be involved in writing codes for the program. He will
analyses the requirements, facts and figures collected by his team member and
implement them in the system. He will design the required prototypes of the system.
2
He will implement the database into program using programming languages. He plays
main role while designing a user interface.
3
CHAPTER 2: LITERATURE REVIEW
The main purpose of House Booking System is to produce a web-based system that allow
customer to register and reserve rooms and flat online and for the company to effectively
manage their House rental business. The advancement in Information Technology and
internet penetration has greatly enhanced various business processes and communication
between companies (services provider) and their customers of which House rental industry
is not left out. A tool through which customers can reserve available Houses online prior
to their expected pick-up date or time. A registration Portal to hold customer’s details
monitor their transaction and used same to offer better and improve service to them.
Features
• Fixed Rates: Fixed rates provide stability for both landlords and tenants. Tenants
can budget more effectively knowing that their rent won't change during the fixed
period, and landlords have a predictable income.
• Reliable Transfers: Rental providers cannot charge a fee for giving their consent,
or refuse consent if a renter won’t pay a fee.
4
• Property List: Include details such as property type, size, location, number of
bedrooms, and amenities.
• Search and Filter Options: Enable users to search for rental properties based on
various criteria (location, price range, property type, etc.).
5
CHAPTER 3: SYSTEM ANALYSIS AND DESIGN
6
3.1.1 Requirement Analysis
For any system, there are functional and non-functional requirements to be considered
while determining the requirements of the system. Functional requirements are product
features or functions those developers must implement to enable users to accomplish their
tasks. In addition, Non-functional Requirements (NFRs) define system attributes such as
security, reliability, performance, maintainability, scalability, and usability.
I. Functional Requirements
Only authentic user must have the access to the system.
Admin/System User:
Admin must be authenticated before accessing system the admin will be able to:
• Add/Update/Delete Property
• Add/Update/Delete Page Contents
• Check enquiry details
• View user Details
Admin will also be able to handle overall system.
Users/Customers:
Member must be authenticated before accessing system The Members will able to:
7
The use case diagram, which present the system requirements are used to show how the
proposed system work in practice. The interaction between actor and use cases are also
described using use case diagram.
8
3.1.2 Feasibility Study
A feasibility study is a detailed analysis that considers all of the critical aspects of a
proposed project in order to determine the likelihood of it succeeding. A feasibility
analysis is used to determine the viability of an idea, such as ensuring a project is legally
and technically feasible as well as economically justifiable. It tells us whether a project is
worth the investment in some cases, a project may not be doable
Feasibility studies undergo four major analysis to predict the system to be success and they
are as follows:
• Technical Feasibility
• Operational Feasibility
• Economic Feasibility
• Schedule Feasibility
I. Technical Feasibility
The system in the facts that it has been developed on windows XP platform and a high
configuration of 1GB RAM on Intel Pentium dual core processors. So, this system is
technically feasible. This study is carried out to check the technical requirements of the
system. We can strongly say that it is technically feasible, since there will not be much
difficulty in getting required resources for the development and maintaining the system.
9
Figure 3.3: Gantt Chart
10
3.1.4 Process Modelling (DFD)
Process modelling involves graphically representing the processes, or actions, that capture,
manipulate, store, and distribute data between a system and its environment and among
components within a system. A common form of a process model is a data-flow diagram
(DFD). A data-flow diagram is a graphic that illustrates the movement of data between
external entities and the processes and data stores within a system.
11
3.2 System Design
System Design is the process of defining the element of a system such as the architecture,
modules and components, the different interfaces of the component and the data that goes
through the system. System design gives the knowledge of the requirements and analysis
to design the software product. In this chapter we will be dealing with the module, database
design, user interface design and the program design. For the designing of the application,
various diagrams like sequence diagram, activity diagram etc. have been used.
12
Figure 3.9: Database Schema
13
3.2.3 Interface Design
Interface design is an important part of software development. User interface is the front-
end application view to which user interacts in order to use the software. User can
manipulate and control the software as well as hardware by means of user interface. UI
should be as simple as possible.
14
Figure 3.10.3: User Register Page Design
15
Figure 3.10.6: User Dashboard Account Page Design
16
Figure 3.10.8: Post Property Page Design
17
3.2.4 Software Design
I. Interface Diagram
18
Figure 3.11.2: Admin Sequence Diagram
19
Figure 3.11.3: User Sequence Diagram
20
II. Activity Diagram
Activity diagrams are graphical representations of workflows of stepwise activities and
actions with support for choice, iteration and concurrency. Activity diagram is basically a
flowchart to represent the flow from one activity to another activity. The activity can be
described as an operation of the system.
21
CHAPTER 4: IMPLEMENTATION AND TESTING
4.1 Implementation
4.1.1 Tools Used
The various system tools that have been used in developing both the frontend and the
backend of the project are discussed in this chapter.
I. Frontend
Also, we used other various software like Microsoft Word to create documentation, Google
meet for communication, XAMPP to implement this project on local server and Visual
Studio Code as an IDE. We used https://app.diagrams.net/ website to create different
diagrams.
22
4.1.2 Implementation Details of Modules
For developing a website, we are going to use HTML, CSS, PHP, JavaScript.
To create web pages, HTML language helps to build login forms, table, image processing,
and perform other various operation which run in browser. A web browser can read HTML
files and compose them into visible or audible web pages. The browser does not display
the HTML tags but uses them to interpret the content of the page. HTML describes the
structure of a website semantically along with cues for presentation, making it a markup
language rather than a programming language.
For Styling the html pages, CSS will assist us. CSS is a Cascading Style Sheet which is
used for making our website more presentable with the help of different selectors.
JavaScript is used in the system to modify html documents, validate forms.
For the backend we will be using PHP. In this system PHP is used for server-side web
development. Similarly, PHP is used to run SQL query to store, retrieve, and manipulate
the information contained in database. As a database we will be using MySQL which stores
the data and information of members and books. Also, it stores records of transactions in
the library.
4.2 Testing
Software Testing is the process of testing the functionality and correctness of software.
Software testing is an empirical technical investigation conducted to provide stakeholders
with information about the quality of the product to the context in which it is intended to
operate. This includes, but is not limited to, the process of executing a program or
application with the intent of finding errors.
• Whitebox Testing
White-box testing is detailed investigation of internal logic and structure of the code.
White-box testing is also called glass testing or open-box testing. In order to perform
white- box testing on an application, a tester needs to know the internal working of the
code.
• Blackbox Testing
The technique of testing without having any knowledge of the interior workings of the
application is called black-box testing. The tester is oblivious to the system
architecture and does not have access to the source code. Typically, while performing
a black-box test, a tester will interact with the system’s user
23
4.2.1 Test Cases for Unit Testing
Unit testing is a software development process in which the smallest testable parts of an
application, called units, are individually and independently scrutinized for proper
operation. This testing methodology is done during the development process by the
software developers and sometimes QA staff. The main objective of unit testing is to isolate
written code to test and determine if it works as intended.
Unit testing is an important step in the development process, because if done correctly, it
can help detect early flaws in code which may be more difficult to find in later testing
stages.
24
TC Test Case Test Data Description Expected Actual Remarks
ID Result Result
25
11 Updating Required data Editing detail Updated As Pass
existing to update should be Successfully expected,
room by updated. result
26
4 For Click yes Clicking Yes Show As Pass
posting button Button message expected,
room in status result
enquiry field :
detail by Uploaded
admin successfully
5 For Click cancel Clicking Show As Pass
Cancelling button Cancel Button message expected,
room in status result
enquiry by field :
user Cancelled
uploading
27
CHAPTER 5: CONCLUSION AND FUTURE WORKS
5.2 Conclusion
We, the project team will design and implement a system capable of allowing users to View
house online and can be able to book houses online through ‘House Rental System’. It will
save a lot of time for Customers as they can be able to book their desired House. By House
Rental System, the project team wants users to provide easy platform for booking house
through online.
28
REFERENCES
29
APPENDICES
Appendix 1: Screenshots
30
31
32
Appendix 2: Source Codes
Login page source code:
<?php
include 'connect.php';
if(isset($_POST['submit']))
{
$email= $_POST['email'];
$password= $_POST['password'];
33
<div class="overlay" onclick="closeModal()"></div>
<div class="login-form" id="loginForm">
<span onclick="closeModal()">×</span>
<h2>Login</h2>
<form action="" method="POST">
<div class="login-form-box">
<label for="">Email</label>
<input type="email" name="email" required>
</div>
<div class="login-form-box">
<label for="">Password</label>
<input type="password" name="password">
</div>
<button type="submit" name="submit" class="btn-login">Login</button>
<div class="dont_have_account_box">
</div>
</form>
</div>
<script>
function showModal(){
document.querySelector('.overlay').classList.add('showoverlay');
document.querySelector('.login-form').classList.add('showloginform');
}
function closeModal(){
document.querySelector('.overlay').classList.remove('showoverlay');
document.querySelector('.login-form').classList.remove('showloginform');
}
</script>
34
Home Page Source Code
<?php
include 'components/connect.php';
if(isset($_COOKIE['user_id'])){
$user_id = $_COOKIE['user_id'];
}else{
$user_id = '';
include 'components/save_send.php';
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>SAAN</title>
</head>
<body>
<div class="home">
35
<section class="center">
<div class="box">
</div>
<div class="flex">
<div class="box">
<option value="flat">flat</option>
<option value="house">house</option>
<option value="room">room</option>
</select>
</div>
<div class="box">
<option value="sale">sale</option>
<option value="resale">resale</option>
<option value="rent">rent</option>
</select>
</div>
<div class="box">
36
<select name="h_min" class="input" required>
<option value="5000">5k</option>
<option value="10000">10k</option>
<option value="15000">15k</option>
<option value="20000">20k</option>
<option value="30000">30k</option>
<option value="40000">40k</option>
<option value="40000">40k</option>
<option value="50000">50k</option>
37
<option value="80000000">8 Cr</option>
</select>
</div>
<div class="box">
<option value="5000">5k</option>
<option value="10000">10k</option>
<option value="15000">15k</option>
<option value="20000">20k</option>
<option value="30000">30k</option>
<option value="40000">40k</option>
<option value="40000">40k</option>
<option value="50000">50k</option>
38
<option value="8000000">80 lac</option>
</select>
</div>
</div>
</form>
</section>
</div>
<section class="services">
<div class="box-container">
<div class="box">
39
<h3>buy house</h3>
</div>
<div class="box">
<h3>rent house</h3>
</div>\
<div class="box">
<h3>sell house</h3>
</div>
<div class="box">
</div>
<div class="box">
<h3>room</h3>
</div>
<div class="box">
40
<img src="images/icon-6.png" alt="">
<h3>24/7 service</h3>
</div>
</div>
</section>
<section class="listings">
<div class="box-container">
<?php
$total_images = 0;
$select_properties->execute();
while($fetch_property = $select_properties->fetch(PDO::FETCH_ASSOC)){
$select_user->execute([$fetch_property['user_id']]);
$fetch_user = $select_user->fetch(PDO::FETCH_ASSOC);
if(!empty($fetch_property['image_02'])){
$image_coutn_02 = 1;
}else{
$image_coutn_02 = 0;
41
if(!empty($fetch_property['image_03'])){
$image_coutn_03 = 1;
}else{
$image_coutn_03 = 0;
if(!empty($fetch_property['image_04'])){
$image_coutn_04 = 1;
}else{
$image_coutn_04 = 0;
if(!empty($fetch_property['image_05'])){
$image_coutn_05 = 1;
}else{
$image_coutn_05 = 0;
$select_saved->execute([$fetch_property['id'], $user_id]);
?>
<div class="box">
<?php
?>
42
<button type="submit" name="save" class="save"><i class="fas fa-
heart"></i><span>saved</span></button>
<?php
}else{
?>
<?php
?>
<div class="thumb">
</div>
<div class="admin">
<div>
</div>
</div>
</div>
<div class="box">
43
<div class="flex">
</div>
<div class="flex-btn">
</div>
</div>
</form>
<?php
}else{
?>
44
</div>
</div>
</section>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script>
<script src="js/script.js"></script>
<script>
range.oninput = () =>{
document.querySelector('#output').innerHTML = range.value;
</script>
</body>
</html>
include 'components/connect.php';
if(isset($_COOKIE['user_id'])){
$user_id = $_COOKIE['user_id'];
}else{
$user_id = '';
45
}
if(isset($_POST['submit'])){
$email = $_POST['email'];
$pass = sha1($_POST['pass']);
$select_users->execute([$email, $pass]);
$row = $select_users->fetch(PDO::FETCH_ASSOC);
header('location:home.php');
}else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login</title>
46
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<section class="form-container">
<h3>welcome back!</h3>
</form>
</section>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script>
<script src="js/script.js"></script>
</body>
</html>
47
Appendix 3: Database Table Screenshots
48
Table 4.5: Request Table
49