SlideShare a Scribd company logo
1 of 96
METTU UNIVERSITY
FACULTY OF ENGINEERING AND TECHNOLOGY
DEPARTMENT OF INFORMATION TECHNOLOGY
PROJECT TITLE: - WEB BASED HOUSE RENTAL SYSTEM FOR
METTU CITY
SUBMITTED TO:-DEPARTMENT OF INFORMATION
TECHNOLOGY; METTU UNIVERSISTY
IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR
B.SC. DEGREE IN INFORMATION TECNOLOGY
INDUSTRIAL PROJECT I I
Advisor: Mr. Prathap (Prof.)
Mettu,Oromia,Ethiopia
August 31,2021
I
Declaration
This is to declare that the project is done with 4th year Information Technology Department
under title of web based house rental system for Mettu city.
INDUSTRIAL PROJECT I
SUBMITTED BY:
1. Daniel Benti RU/ 2358/10
2. Gelana Leta RU/ 2419/10
3. Geda Abera RU/ 1857/10
4. Yared Asefa RU/ 1224/10
5. Firomsa Ababe RU /152/10
Examination Board:
1._________________________ _____________________ ________________
Advisor Name Signature Date
2.________________________ _____________________ ________________
Examiner Name Signature Date
3. ________________________ _____________________ ________________
Examiner Name Signature Date
II
Acknowledgement
First of all, the project team would like to greatly thank God, who gave us the power to
understand and to better analyzed the system.
Secondly, we would like to thank our Advisor Mr. Prathap (Prof.) for his valuable comments,
support, and guidance throughout this project work.
Thirdly, we would like to thank for all Mettu city house register office employees who gives
the necessary information for our project.
Finally, we would like to thank our groups and friends for their encouragement and support
throughout this project work.
III
Table of Contents
Declaration....................................................................................................................................I
Acknowledgement........................................................................................................................II
Table of Contents ........................................................................................................................III
List of tables ...............................................................................................................................VI
List of figures.............................................................................................................................VII
Abstract....................................................................................................................................VIII
List of Acronym’s........................................................................................................................IX
CHAPTER ONE.......................................................................................................................... 1
1 Introduction .......................................................................................................................... 1
1.1 Background................................................................................................................... 1
1.2 Statement of the problem................................................................................................ 2
1.3 Objective of the project......................................................................................................3
1.3.1 General objective of the system................................................................................... 3
1.3.2 Specific objective of the system................................................................................... 3
1.4 System development Methodology ..................................................................................... 3
1.4.1 Data collection methodology....................................................................................... 3
1.4.2 System development approach .................................................................................... 4
1.5 Hardware and software tools .............................................................................................. 4
1.5.1 Hardware tools .......................................................................................................4
1.5.2 Software tools ........................................................................................................4
1.6 Feasibility Study................................................................................................................ 5
1.6.1 Operational Feasibility................................................................................................ 5
1.6.2 Economic feasibility...................................................................................................5
1.6.3 Technical Feasibility...................................................................................................6
1.6.4 Schedule Feasibility....................................................................................................7
1.7 Project Scope and Limitation.............................................................................................. 7
1.7.1 Scope of the project....................................................................................................7
1.7.2 Limitation of the project ............................................................................................. 8
1.8 Significance of the project..................................................................................................8
1.9 Time Schedule................................................................................................................... 9
1.10 Risk..................................................................................................................................9
1.10.1 Risk Assessment and management............................................................................... 9
CHAPTER TWO: ANALYSIS.................................................................................................... 10
IV
2.1 INTRODUCTION............................................................................................................. 10
2.2 Existing System........................................................................................................... 11
2.2.1 Description of the Existing System............................................................................ 11
2.2.2 Supplementary Requirements.................................................................................... 11
i) Business rule ................................................................................................................... 11
a) Business rule of proposed system...................................................................................... 12
b) Business rules of existing system...................................................................................... 12
2.2.3 Constraints of the system.......................................................................................... 12
2.3 New System................................................................................................................ 12
2.3.1 Requirement Analysis of the New System.................................................................. 13
2.3.2 Functional requirement ......................................................................................... 13
2.3.3 Nonfunctional requirement.................................................................................... 14
2.4 Use Case Model........................................................................................................... 15
2.4.3 System use case description ...................................................................................... 20
2.4.4 Key abstraction with CRC analysis............................................................................ 26
2.4.3 Sequence diagram .................................................................................................... 28
2.3.4 Activity Diagram............................................................................................................ 35
2.3.5 Conceptual modeling: Class diagram ............................................................................... 38
2.5 User Interface Prototyping................................................................................................ 40
2.6 Identifying change cases........................................................................................................ 40
CHAPTER THREE: SYSTEM DESIGN ..................................................................................... 41
3 Introduction .................................................................................................................... 41
3.1 Design goal................................................................................................................. 41
3.2 Class modeling diagram ............................................................................................... 41
3.3 Current software architecture........................................................................................ 42
3.4 Proposed software architecture ......................................................................................... 42
3.4.1 Subsystem Decomposition ........................................................................................ 43
3.4.2 Component Diagram................................................................................................. 45
3.4.3 Deployment Diagram ............................................................................................... 47
3.4.4 Persistence modeling for object oriented database....................................................... 47
3.4.5 Access control and security....................................................................................... 48
3.5 Boundary conditions and exception handling..................................................................... 49
3.6 User Interface Design ...................................................................................................... 51
CHAPTER FOUR: IMPLEMENTATION AND TESTING ......................................................... 53
V
4. Implementation ............................................................................................................... 53
4.1 Testing........................................................................................................................ 81
4.1.1 Sample testing.......................................................................................................... 82
4.2 Sample Unit Testing..................................................................................................... 82
4.2.1 Installation............................................................................................................... 83
4.2.2 Client Feedback ....................................................................................................... 83
CHAPTER FIVE: CONCLUSION AND RECOMMENDATION ................................................ 84
3. CONCLUSION............................................................................................................... 84
5.1 RECOMMENDATION........................................................................................................ 85
(REFERENCES)........................................................................................................................ 86
VI
List of tables
Table 1 Budget estimation of the project ........................................................................................ 6
Table 2 Schedule feasibility of the project ...................................................................................... 7
Table 3 Time schedule feasibility of the project .............................................................................. 9
Table 4 : Use Case Component (scenario) .................................................................................... 17
Table 5 Login use case description............................................................................................... 20
Table 6 Send request use case description..................................................................................... 21
Table 7 Register house use case description.................................................................................. 22
Table 8 Delete house information use case description .................................................................. 22
Table 9 View customer request use case description...................................................................... 23
Table 10 View house use case description .................................................................................... 24
Table 11 Send response use case description ................................................................................ 24
Table 12 Update house use case description ................................................................................. 25
Table 13 Send feedback use case description ................................................................................ 26
Table 14 Logout use case description........................................................................................... 26
Table 15 Structure of CRC card................................................................................................... 27
Table 16 Access control and security ........................................................................................... 49
Table 17 Testing......................................................................................................................... 82
Table 18 Unit Testing.................................................................................................................. 83
VII
List of figures
Figure 1 Essential use case diagram............................................................................................. 18
Figure 2 Use case diagram........................................................................................................... 19
Figure 3 Create account sequence diagram................................................................................... 29
Figure 4 Log in sequence diagram........................................................................................... 30
Figure 5 Send request sequence diagram ...................................................................................... 31
Figure 6 Register house sequence diagram ................................................................................... 32
Figure 7 Send feedback sequence diagram.................................................................................... 33
Figure 8 Send response sequence diagram.................................................................................... 34
Figure 9 Login activity diagram................................................................................................... 35
Figure 10 Register user activity diagram ...................................................................................... 35
Figure 11 Reserve house activity diagram .................................................................................... 36
Figure 12 Generate report activity diagram................................................................................... 36
Figure 13 Delete house activity diagram....................................................................................... 37
Figure 14 Send response activity diagram..................................................................................... 37
Figure 15 Post house activity diagram......................................................................................... 38
Figure 16 Class diagram.............................................................................................................. 39
Figure 17 User Interface prototyping............................................................................................ 40
Figure 18 Class Diagram............................................................................................................. 42
Figure 19 System architecture model for proposed system............................................................. 43
Figure 20 Subsystem Decomposition ........................................................................................... 45
Figure 21 Component Diagram.................................................................................................... 46
Figure 22 Deployment diagram ................................................................................................... 47
Figure 23 Persistence diagram..................................................................................................... 48
Figure 24 Home page.................................................................................................................. 51
Figure 25 Create account admin page........................................................................................... 52
Figure 26 Login page .................................................................................................................. 79
Figure 27 send activation request................................................................................................ 80
Figure 28 Employee page............................................................................................................ 80
Figure 29 Account create page..................................................................................................... 81
VIII
Abstract
The main objective of this project is to study and understand the current system problems and
provide an automated system as a solution to enable the house rent to cope up with
technological advancement. The project provides a web-based house rental activities. This
project is aimed to develop a system that handles manual work operation of staff workers by
providing different utilities for the renting system. The project replaces the manual file
handling system into computerized system and it makes secure the processes by providing
different security mechanisms.
IX
List of Acronym’s
BR …………………Business rule
CSS…………………cascading style sheet
DB …………………database
MCHRS ……………Mettu City House Rental System
GPS………………..global positioning system
HTML……………….hypertext markup language
OOA………………..object oriented analysis
OOAD……………..object oriented analysis and design
OOD……………….object oriented design
OOSAD……………..object oriented system analysis and design
OOSD………………. object oriented system development
PHP………………… hypertext pre processor
REQ………………… requirement
SQL………………… structured query language
SRS…………………. Software Requirement Specification
UI…………………..user interface
UML -------------------Unified modeling language
1
CHAPTER ONE
1 Introduction
Due to its numerous benefits nowadays computers are involved in every sectors of life, in wide
range of applications. And even in some areas mankind has been totally dependent on
computers.
One of the remarkable and much known products of technology advancement is the conversion
of manually-operated system into automated system. Automation produces a great impact in
the lives of mankind, particularly in the field of industry, business, medicine, technology and
education.
Renting a home is popular with peoples from all walks of life. Typically students and
employees that are moving temporarily will share house renting. Basically we are initiated to
develop this system because all most all of Mettu city employees get suffer about house renting
even they leave with their relatives until they find house that was really difficult to do
practically therefore, we are developing this system today.
The main purpose of this project is to develop and implement a web based application “online
house renting system” in order to implement web based house property system to help renters
to provide reliable services. These systems tend to us to find possible solution about the
problem it helps user to access the system easily.
1.1 Background
Mettu is one of the beautiful cities found in Ethiopia. The city is found in the South-Western
parts of Ethiopia. Located in the Illubabor Zone of the Oromia Region. Which is 600km far
from Addis Ababa Ethiopia. Currently the city has no automated house renting system for
customers. Since the city is wide it is harder to find houses for renting in such wide city. In
Mettu Town the population growth is increasing day to day that means different branch offices
are opened like Mettu University, this university and other company’s needs employees and
teachers to work in their company and these employees need house to serve their life. So we
have started to develop new web based application of house renting relative with current
problem of the city we have started by studying the detail of the system.
2
1.2 Statement of the problem
Mettu city is a very wide city, therefore to rent or finding a house in this city is taken as a
problem. The other problem is increasing the number of people come to Mettu from day to day
for different reasons and they want to rent a house. And also Mettu city house development
office registers customers on the paper. This paper based or manual based system leads to
different problems.
Moreover data is not secure from accident or damage as well as it is not well organized because
of this the efficiency of the working system is not good and as the amount of the customer
increase the waiting time of the customer will be increase also the customers do not get better
service as they need, then they may lose their time until they register. Generally the main and
observed problems are:-
 Man power wastage:-renters lose their energy by finding house on foot from place to
place even they cannot get house because most of houses are reserved and they cannot
know where they can get free house exactly.
 Wastage of money:-renters waste their money for coordinators payment and for taxi in
order to go the office.
 Difficult for customers to withdraw from house: - Since the system is manual it is
difficult to drop the files of customer’s on the paper.
 Coordinators or brokers false information:-coordinators give uncertain information for
renter when the renters will find the house with coordinators since the renter did not get
the house as he/she expect.
 Data Redundancy: - There is redundancy in renting new houses. Coordinators or brokers
may take payment from different peoples and they will give the house for the one who
gives more money for them this leads to conflict among them.
 Prone to error: - Since manual systems are done by human being’s it is prone to error.
 Files are not secure:-There is no authentication mechanism to secure the files. Therefore
files are easily accessible by any one.
3
1.3 Objective of the project
For a better understanding we put our objectives in two sections: specific and general objective.
1.3.1 General objective of the system
The general objective of the system is to develop and design a web based house rental system
for Mettu city.
1.3.2 Specific objective of the system
To achieve general objective of the system we used the following specific objectives.
 To gather required information for proposed system by using interview, observation,
and document analysis.
 To Analyze the gathered information using SRS
 To Compare and contrast the proposed system with existing system
 To Design the proposed system using UML diagram.
 To Design a user interface for the proposed system
 To Design a database for the proposed system
 To Design implementation for the proposed
 To Test the proposed system
1.4 System development Methodology
1.4.1 Data collection methodology
 Observation: - It is fact finding technique where the system analyst either
participates in or watches a person performs activities to learn about the system.
It gives us better measurement than the authorized personnel and we will be able to
see exactly what is being done, it is expensive and highly reliable. By observing the
existing problem we are gathering the data. Also we have referred other senior
projects. And we observe the entire broker working procedures and renters.
 Interview:-It is fact finding technique where by the system analyst collects
information from individual face to face interaction. It gives as an opportunity to
motivate the interviewee to respond freely and openly and it allows us to prove for
more feedback from the interviewee. In addition we believe that we adapt reward
questions for each individual. Having an interview making questionnaires and
observing in the around problems. Also we collected raw data or documents which
are useful for the project should be implemented.
 Document analysis: the project team tried to discover written documents about the
organizational areas relevant to the project.
4
1.4.2 System development approach
In this project, we would use object oriented system development methodology (OOSD) for
designing. OOSD in modern software engineering is best conducted in an iterative and
incremental way. Iteration by iteration, the outputs of OOAD activities, analysis models for
OOA and design models for OOD respectively, will be refined and evolve continuously driven
by key factors like risks and business value so in this project we use OOSD due to the above
task as well as easier to use in our skill and not as much cost.
We select this because of the following advantages:-
 To simplify the design and implementation of complex program.
 To make it easier for teams of designers and programmers to work in a single software
project.
 To enable a high degree of reusability of designs and software codes. Increased
consistency among analysis, design and programming activities
1.5 Hardware and software tools
1.5.1 Hardware tools
The hardware Requirements needed to complete the proposed system are:
 Flash Disk -To store and transfer files.
 CD -To submit the final document.
 Computer: - to develop our system we use a laptop which has the following properties.
 Windows 8 or 10 OS
 The capacity of RAM is 4GB
1.5.2 Software tools
In order to achieve our objectives successfully we are using various software tools
depending on their purpose. For example:-
 Microsoft Office Word 2010/2013:- to write proposal and documentation part of the
project
 Draw.io:-for drawing UML software diagrams.
 Browser:-like chrome, Firefox, opera will be used for searching information for
designing and developing.
 MicrosoftPowerPoint20010/2013:-will be used to prepare presentation of this
project documentation.
 MYSQL server: -for developing the database
 Wamp Server- used to run server side scripting language of the project.
5
1.6 Feasibility Study
A feasibility study is an analysis used in measuring the ability and likelihood to complete a
project successfully including all relevant factors. It must account for factors that affect it such
as economic, technological, legal and scheduling factors. Project managers use feasibility
studies to determine potential positive and negative outcomes of a project before investing a
considerable amount of time and money into it. It is the measure of evaluates and analysis of
the project’s potential for success.
1.6.1 Operational Feasibility
The proposed system has been operationally functional and user friendly. The users of system
use the system to perform its regular task without any ambiguity. The user of the system can
understand the new system with little trial. Operationally the system has capable of producing
quick and qualitative services to users therefore the system developed is operationally more
feasible. Operational feasibility assesses the extent to which the required software performs a
series of steps to solve business problems and user requirements. This feasibility is dependent
on human resources (software development team) and involves visualizing whether the
software will operate after it is developed and be operative once it is installed. It determines
how the system satisfies the organizations need and it also offers secure, accurate and efficient
system to the organization. The system in which we will have developed is also compatible to
all operating systems. Operational feasibility also performs the following tasks:-
 Determines whether the problems anticipated in user requirements are of high priority.
 Determines whether the solution suggested by the software development team is
acceptable.
 Analyzes whether users will adapt to new software.
 Determines whether the organization is satisfied by the alternative solutions proposed
by the software development team.
 User friendly-the system will be easy and user friendly to be acceptable of users.
1.6.2 Economic feasibility
The purpose of economic feasibility assessment is to determine the positive economic benefits
to the organization that the proposed system provides. It includes quantification and
Identification of all the benefits expected. This assessment typically involves a cost/benefits
analysis.
House rent site is available to anybody and anywhere. So the system is more functional in
reducing costs from both users and the owner.
6
Some benefits the system provides are:-
 Small response time and many services.
 Easy and fast file management.
 Reduce cost for manual data management (Reduced expenses).
 Easy update & retrieval on stored records.
Our system is economically feasible, because it reduces the time needed to perform certain
actions such as budget to cover man-power, paper and pen which they are using for manual
work.
Material and Additional
thing
Number
item
of Cost per
item/Birr
single
Total/Birr
16GB Flash disk 1 220 200
Pen 5 10 50
A4 size paper 1/2 Desta 0.5 125
Print of document 120 sheet 2 240
Total = 615
Table 1 Budget estimation of the project
1.6.3 Technical Feasibility
The technical feasibility is primarily concerned with ascertaining whether the needed
technology is existed to accomplish things as have been suggested. Technical feasibility
assesses the current resources (such as hardware and software) and technology, which are
required to accomplish user requirements in the software within the allocated time and budget.
Technical feasibility also performs the following tasks. Analyzes the technical skills and
capabilities of the software development team members, and determines whether the relevant
Technology is stable and established. The proposed system is technically feasible as:
 This project is practically applicable with in the current technology.
 The software used to implement the system is well understood by the group members.
We have technical knowledge about:
 PHP used as an interface with WAMP.
 Notepad/Notepad++ to write and edit the code.
 MYSQL to build the database for storing the data.
7
 Unified Modeling Language (UML) model to do analyzing and designing in good
manner.
1.6.4 Schedule Feasibility
The time given for this project is around four month. According with our time duration, we
have listed the activities in accomplishing the project work with its schedule requirement which
are listed on the table below
No. Activities
April
28,2013
to May
5,2013
May
6,2013 to
May
29,2013
May
30,2013
to June
12,2013
June
13,2013
to Aug
30,2013
Sept
1,2014 to
Sept3,2014
Sept
3,2014 to
Sep
9,2014
1
Proposal
submission&
documentation
2
Requirement
gathering &
analysis
3
Requirement
Elicitation &
specification
4
System Design
5
Implementation
6
Testing
Table 2 Schedule feasibility of the project
1.7 Project Scope and Limitation
1.7.1 Scope of the project
The scope of the project can be described as the overall features of what the new system is
capable of doing. This system has different features which make things easier for the office.
Generally our proposed system will support the following features.
 The system registers and post houses.
 The system manages all users account.
 The system updates house information.
 The system view reserved house and free house
 The system sends request.
 The system view request.
8
 The system sends response to the customers.
 The system view houses information
 The system view customers’ requests
 The system send withdrawal request
 The system generates report
 The system send feedback
1.7.2 Limitation of the project
 Our system does not support online money transactions.
 Our system has also limitations on a place that has not internet accessibility because it is
depend on connection since it is online.
 The limitation of our system is that all users may not be participating directly to the system
since it is not done by a local language.
 Our system does not support GPS system for locating houses.
 It does not include kebele houses
1.8 Significance of the project
After implementing the project our proposed system provides many advantages for customers,
employees as well as administrator.
The main significance of the project includes:
 Customers will reserve house by selecting the place, type of house and the cost they
can pay by viewing all recorded house details.
 Houses will rent with short time.
 Houses can become available to customers within the time of they want to rent.
 The system is more secured than existing one so files cannot be lost easily.
 It increases performance of the system.
 It makes disabled persons participant in the service.
 Save time, money, and other related things.
 Decrease the difficulties of customer.
 Makes the system user friendly.
 Motivate the people to use online system.
 Provide knowledge and internet service for the people.
 Easy and manageable report
9
1.9 Time Schedule
This refers the tasks that will be performed in the scheduled time. Based on the time we have,
each task of our project will be proceeding based on the following time line.
No. Task name April
28,2013
to May
5,2013
May
6,2013 to
May
29,2013
May
30,2013 to
June
12,2013
June
13,2013 to
August
30,2013
September
1,2014 to
September
3,2014
September
3,2014 to
Sep
9,2014
1
Requirement
gathering
2
System analysis
3
System design
4
Implementing
5
Testing
6
Submission date
Table 3 Time schedule feasibility of the project
1.10 Risk
Some Risks and Contingencies that may happen during the development of the system are
includes absence of electric power, if backup files were destroyed by someone else,
There may be risks during the development of the system, some actions may occur when we
are doing our project (Those actions may be damaged our system that is why we say risk).
There may be losing data from our machine (computer) when there is power failure operating
system scratched, and if there is absence of team member during working because of different
problems.
1.10.1 Risk Assessment and management
Technical Risks:These risks may result from excessive constraints, lack of experience, poorly
defined parameters, or dependencies on organizations outside the direct control of the project
10
team. In order to mitigate or control this risk the team will perform periodic checks on the work
that have been done, and by using continuous advice provided from the project advisers.
Requirement changes: since this risk leads to system poor communication resulting in
misunderstandings and quality problems, the team altered participatory type of data modeling
to overcome such risks.
In addition there are other risks like power frailer, virus attack, when one group members fail
to continue with us
CHAPTER TWO: ANALYSIS
2.1 INTRODUCTION
Requirement analysis is the initial step of constructing the whole software system. It is a
description of the project requirements that we have been gathered and analyzed. Without
requirements, the goal is not clear and understandable. In this chapter, requirements of the
software system are defined through human natural language and use case. The document is
provided in order to ensure that the software we produce will be consistent with the need of the
system’s user or customer.
During this phase, the analysis and system modeling must become full aware of functional
requirements, nonfunctional requirement of the proposed system, boundaries of the system
using use case description, Use-case diagram, showing the behavior of the system and the
communication among objects using sequence diagram and describing the structure of the
system using class diagram.
11
The aim of this document is to gather and analyze and give an Interactive system by defining
the current system problem statement in detail.
2.2 Existing System
2.2.1 Description of the Existing System
The existing house rental system in Mettu Town currently uses the traditional way of searching
of house. The owner that wants to rent writes the vacancy (some information) about house and
tag it on the door then the customer read that vacancy and contact with him for renting purpose.
Once a customer finds a vacant house after a long journey, they can call the renter of the house
by the contact information tagged to the house. And if they can reach at an agreement, mutual
third party is mandatory for them to sign an agreement contact that deals about price and
different conditions.
Since it is manual based the existing system has faced many problems. Among Those problems
which includes poor performance, prone to error and poor productivity are listed out. The other
problem is that data management related problems this implies the data is not easily accessible,
not well organized, not secure from damage and the data is stored redundantly in the form of
multiple copies of files. Since it is manual based the system is not efficient, do not give better
quality service as customers need. Due to this reason customers do not satisfy with the service.
As customer increase the waiting time of customer to register is increase. Due to this reason
customers lose their time and money until they are registered.
Currently the office work’s manually. The office register customer’s on the paper. Since it is
paper based or manual based it leads to different problems. One of the problems that are caused
by this manual based system is that loss of the file. This implies that the information is simply
put on paper without any recovery mechanism. Since this papers are easily movable by peoples,
other people may intentionally or unintentionally loss the file. The main problem is that there
is no any modern tool to search and find houses for renting as well as showing the location of
houses for customers. Due to this Reason new customers may face different difficulties. Among
those difficulties customers may lose money for brokers. Brokers may also give incorrect
information about the house. This leads to customers too difficult to change or leave the house
after renting if the house is not comfortable to live or work. New customer’s money or other
things may be stolen by thieves since there is no information about the thieves or the people.
2.2.2 Supplementary Requirements
i) Business rule
A business rule is effectively an operating principle or polices that must be fulfilled and
Obligated in order the system will function properly and effectively. It often related to access Control
12
issues, business calculations, or operating polices and principles of the organization. The rules have
included below:
a) Business rule of proposed system
Our proposed system includes the following operating principles or rules:
BR1: For accessing governmental houses every customer must have an ID.
BR2: To access private owned houses customers must have an ID.
BR3: Unauthorized users cannot use the system
BR4: Username and password is required to use the system
b) Business rules of existing system
The business rules of the existing system
 BR 2: owner should pay tax on specified time.
 BR3: Both owners and customer should submit legal agreement and take full
accountabilities.
 BR4: Every house that wants to get service from the system must be registered.
 BR5: Every customer must be paid to register from the system in order to get service.
 BR6: Agreement should be register to the system.
 BR7: customer and owner meet to submit agreement.
2.2.3 Constraints of the system
System constraints are elements, factors or sub system that works as a narrow part of a road, when
congestion occurs. It put a limit on an entity, project or system from achieving its qualities that may be
developed with reference to its goals.
The constraints may include the following:-
 Lack of adequate information:-There were problems while with difficult requirements
because the employees are not voluntary to give enough information about the rental
system.
 Lack of time: - The time given to complete this project is very short the reason is a lot
of other courses assignment and exam are loaded.
 Lack of comfortable place:-There was no comfortable place to do our project proposal
as well.
 Budget:-which means for writing we did not have enough money.
2.3 New System
House rental system is designed to provide fast and easy way of controlling all the
activities of house renting. It is also used to communicate with customer’s using the web, keep
the data for the longest time with in the database.
13
Our proposed system provides an easy way for customer’s to check available house’s for
renting. And also the system allows to manage all house related files. This includes posting,
deleting and updating houses .The system also provides an easy way for admin and private
owner to see customer’s request on the web and sending their response to the customer.
Generally, house rental system is concerned on managing house’s, providing easy and
understandable way of controlling the activities of house renting, and making easy and
fast communication held between customer, admin, employees and private owner.
The major solutions to address the problems of the existing system are as follows. Better
utilization of resources, performance, security, reliability, accuracy and in general better
service and the new system is aimed to perform basic and crucial tasks of the organization. It
contains a well-organized database server which makes data to retrieve, update easily. Since
the computer is capable of performing and processing many and huge tasks too faster, efficient
and more correct it is preferred to apply it on the system.
2.3.1 Requirement Analysis of the New System
The purpose of requirement is used to prepare requirement specification before starting the
actual design. This enables the designer to have a clear idea about the structure and content of
the information system.
2.3.2 Functional requirement
Functional requirements consist of a specification of a function that the system must support.
In this section we discuss what is our web based system is expect to do. The type of user in this
system is customer (user), employee, Private owner and administrator.
Administrator:
REQ-1: The system shall allow Administrator to login before accessing system.
REQ-2: The system shall allow Administrator to manage user account.
REQ-3: The system shall allow the administrator to delete house.
REQ-4: The system shall allow the administrator to update house.
REQ-5: The system shall allow the administrator to view customer feedback
REQ-6: The system shall allow the administrator to view customer request.
REQ-7: The system shall allow the administrator to Generate report.
REQ-8: The system shall allow the administrator to Generate news.
REQ-9: The system shall allow the administrator to send response for customer.
Private owner:
REQ-10: the system shall allow Private owner to login before accessing system.
14
REQ-11: The system shall allow the private owner to post their house.
REQ-12: The system shall allow the private owner to register their house.
REQ-13: the system shall allow the private owner to delete their house.
REQ-14: The system shall allow the private owner to update their house.
REQ-15: The system shall allow the private owner to view customer feedback
Customer:
REQ-16: The system shall allow Customer to login before accessing system.
REQ-17: The system shall allow Customer to send request.
REQ-18: The system shall allow Customer to give feedback.
REQ-19: The system shall allow Customer to view houses.
REQ-20: The system shall allow Customer to view response for their request.
REQ-21: The system shall allow Customer to view report generated by admin.
REQ-22: The system shall allow Customer to reserve house.
REQ-24: The system shall allow Customer to view news.
REQ-25: The system shall allow Customer to send withdrawal request.
Employee:
REQ-26: The system shall allow Employee to login before accessing system.
REQ-27: The system shall allow Employee to View customer feedback.
REQ-28: The system shall allow Employee to upload houses.
REQ-29: The system shall allow Employee to view customer request.
REQ-30: The system shall allow employee to reserve house for customer.
REQ-31: The system shall allow Employee to view report and news
2.3.3 Nonfunctional requirement
Non-functional requirements are requirement, which are not very basic or essential for the
system, but it can support and give more quality for the system. The non-functional requirement
of the system deals with how well the system provides service to the user. They are also called
technical requirements. It concerns to the technical aspects that your system must fulfill, such
as performance-related issues, reliability issues, and availability issues. The new system had
the following Non-functional requirements.
 User friendly interface:-since the system has attractive interface therefore users are
interested to use it.
15
 Error handling: - when the user makes some mistakes the system responds that error
has occurred using easily understandable messages and allows the user to recover from
the error.
 Availability:-the system is available at any time with internet connection.
 Security issue-the system is secured, users can't access the system without
authentication.
 User satisfaction:-we will satisfy all requirement of the user as much as possible by
using prioritization and negotiation.
 Efficiency: - The system responds to user requests as fast as possible and fully
operational every day for 24 hours.
 Time minimization the time taken to find a house to rent will be reduced.
 Cost minimization since searching is online expenses are reduced.
 Reliability: The system should handle invalid inputs and displays error message to
users. Reliability is one feature of the system significantly validates user inputs
 Portability: This system is portable, since it runs on different platforms. Running on
different platforms makes the system accessible by users.
 Performance: there is no ambiguous data fetched on the system and no wastage of time
to organize and integrate file.
2.4 Use Case Model
A use-case model is a model of how different types of users interact with the system to solve a
problem. As such, it describes the goals of the users, the interactions between the users and the
system, and the required behavior of the system in satisfying these goals.
 It represents interaction between a user (human or machine) and the system.
 It describes the proposed functionality of the new system. It is a single unit of meaning
full work. Each Use Case has a description which describes the functionality that will
be built in the proposed system.
 It has two types of use cases:
 Essential use case
 System use case
A use case diagram contains four components.
 Boundary:-which defines the system of interest in relation to the world around it.
 Actors: -usually individuals involved with the system defined according to their roles.
 Use cases: - the specific roles are played by the actors within and around the system.
 The relationships:-between the actors and the use cases
16
Construct Description Symbol
Use case ✓ A sequence of action including the
function that system can perform to interact
with actor of the system
Actor ✓ A coherent set of roles that users of the use
case play when interacting with these use
case(system)
Actor Name
System
boundary
✓ Represents boundary between physical
system and the actor who interact with
Boundary name
Association ✓ The participation of actors in use case that
is instance of actor and instance of use case
communicate with each other.
Association Name
Extended ✓ The relationship from an extension use
case to base use case specify how the
behavior for extension use case can be
inserted into behavioral defined for the base
use case.
✓ An extend relationship between two use
case indicates alternative behavior
<<extend>>Use or include
Use or Include ✓ A relationship from use case to an
inclusion use case specifying how the
<<include>>
17
behaviors use case for the inclusion uses case
inserted to the behavior for the base use case.
✓ An include relationship between use cases
indicates where one use case always includes
the behavior of another.
Generalization ✓ Taxonomic relationship between more
general use case and more specific use case
Table 4 : Use Case Component (scenario)
18
2.4.1 EssentialUse case Diagram
Use Case represents interaction between a user (human or machine) and the system. Use case
components (Scenario):
Figure 1 Essential use case diagram
2.4.2 System Use Case Diagram
Use case diagram Shows use cases, actors, and their inter-relationships. A use case diagram
is a graphic depiction of the interactions among the elements of a system. A use case is a
methodology used in system analysis to identify, clarify and organize system requirements.
Use Case Model describes the proposed functionality of a new system. A Use Case represents
a discrete unit of interaction between a user and the system
19
Actors: An actor represents a type of users of the system that the system interacts with. An
actor is a user of the system playing a particular role.
Use cases: A use case describes the sequence of events of some types of users, called Actors,
using some part of the system functionality to complete a process.
Actor Identification
An actor initiates a use case and receives something of value from the use case. Actors are
always external to the system being modeled i.e. they are not parts of the system.
We identified the following actors.
 Administrator:
 Customer
 Owner:
 employee:
Figure 2 Use case diagram
20
2.4.3 System use case description
Table 5 Login use case description
Use case
name
Login
Actors Customer, Private Owner, admin, Employee
Description The Customer, Private Owner, admin and Employee uses this form to log into the
system.
Pre-condition The Customer, Private Owner, Employee and admin should be register first or need
to have an account to login.
Basic flow of
event
1. The customer, Private Owner, Employee and admin enter to the home page
2. system displays login form
3. Enter user name and password and click login button
4. The system checks for the validity of the user name and password
5. The system displays the customer, Private Owner, Employee or admin page
6. Use case Exit
Alternate
course of
action
1 If the entered user name and password is not valid it displays “please enter valid
user name and password” go to basic flow 2.
2 If the user forgot the user name and password display reset user name and password
page.
Post
condition
The users (Customer, admin, Private Owner and Employee) logged in to the main
page.
Use case Send request
Actor Customer
Description This use case permits to register rental information of the customers and the
house that the customers rent.
21
Table 6 Send request use case description
Pre-condition Login
Flow of event 1: This use case is initiated when the actor’s clicks on send request
option.
2: System displays the page that contains information to be registered
3: Actors fill all the information
4:customerclicks or press on the
Save or insert button.
5: The system verifies that the fields have been filled out correctly.
6: System displays send successfully.
7: Use case Exit
.
Alternate course
of action
4.1 If the customers fields are not filled out correctly system goes back or returns
to step 4 of basic course of Action to fill valid data.
Post-condition Customer’s information is registered.
Use case Register House
Actor Private Owner and Employee
Description This use case permits to register rental information of the Private Owner and
Employee and the house that they register
Pre-condition Login
22
Table 7 Registerhouse use case description
Table 8 Delete house information use case description
Flow of event 1: This use case is initiated when the actors clicks on register houses option.
2: System displays the page that contains information to will be registered.
3: Private Owner and Employee fill all the information
4: Private Owner and Employee click or press on the save or Register button.
5: The system verifies that fields have been filled out correctly.
6: The system displays inserted successfully message.
7: Use case Exit
Alternate
course of
action
If landlords fields are not filled out correctly system goes back or returns to step 3
of basic course of Action. To fill valid field.
Post-
condition
Private Owner and Employee information is registered.
Use case Delete house information
Actor Admin, Private Owner
Description Only admin can Delete Governmental house information and Private Owner
deletes their own house
Pre-condition Admin and Private Owner need to have an account to manage
Flow of event 1: This use case is initiated when admin and Private Owner click on manage
delete house option.
2: System displays the page that contains delete buttons.
3: Admin Private Owner deletes resources.
4: System displays deleted successfully if admin and Private Owner delete
house information.
5. Use case Exit
Post-condition Admin and Private Owner want to manage resources
23
`
Table 9 View customer request use case description
Use case View customer request
Actor Admin, Employee
Description When Admin and Employee choose view customer request option, the system
displays information.
Pre-condition Admin and Employee need to have an account if they want to see more
requests.
Flow of event 1: This use case is initiated when the Admin and Employee clicks the view
customer request option.
2: The system displays available name of customer and some descriptions.
3: Admin and Employee click the view request option.
4: System displays all the available requests, recorded in the database.
7: Use case Exit
Post condition Admin and Employee want to know if there is customer’s request.
Alternative
flow of event
Admin and Employee only see the name and the description of customers
Use case View house
Actor Customer, Private Owner And Employee
Description When actors choose view house option, the system displays all
available resources.
Pre-condition User need to have an account if they want to see more house
information.
24
Table 10 View house use case description
Table 11 Send response use case description
Flow of event 1: This use case is initiated when the actors clicks on view resources
option.
2: System displays available name of the Private Owner, employee
and some descriptions.
3: customer click on house option
4: System displays all the available resources recorded in the
database.
7: Use case Exit
Post-condition Customer wants to know if house information is reserved or not.
Alternative flow
of event
Actors see only name of the Private Owner and Employee description
if they don’t want to login.
Use case Send response
Actor Admin, employee
Description When Admin, employee choose view Customer request option, the system
displays information about who is requested
Pre-condition Admin or employee is already logged in
Flow of events 1. The Admin, employee click view request button.
2. System display text area box and request button.
3. Employee fills necessary notification and click request button to send
it.
4. The system will display send successfully message.
5. Use case Exit
Post condition Response is send to the Customer
25
Table 12 Update house use case description
Use case Update house
Actor Admin, Private Owner
Description Only Private Owner can update Their own house information and Admin can
update Governmental house Information
Pre-condition Admin, Private Owner need to have an account to modify the property
Flow of event 1: This use case is initiated when Admin, Private Owner click on house
information option.
2: System displays the page that contains update buttons.
3: Admin, Private Owner updates resources.
4: System displays update successfully.
5. Use case Exit
Post-condition Admin, Private Owner want to modify house information
Use case
name
Send Feedback
Actors Customer
Description: To enable the users to send the feedback, to comment any Suggestion on text
area.
Precondition: The customer must be having a suggestion about the system as well as houses
property.
Flow of
event
1. The customer click feedback button.
2. System display text area box.
3. The customer writes some necessary information and click post button.
4. The system can validate if writes on text area or not.
26
Table 13 Send feedback use case description
Use case name Logout
Participating actors: System administrator, customer,
Employee and Private Owner
Pre- Condition: System administrator, customer,
Employee and Private Owner should be
logged in
Description: To Exit from services.
Flow of action: System administrator, customer,
Employee and Private Owner clicks on
logout button.
Table 14 Logout use case description
2.4.4 Key abstraction with CRC analysis
A Class Responsibility Collaborator (CRC) model is a collection of standard index Cards that
have been divided into three sections; this is class name, responsibility and collaborator.
A class represents a collection of similar objects, a responsibility is something that a class
knows or does, and a collaborator is another class that a class interacts with to fulfill its
responsibilities. Those can be shown in the following table.
5.the system can make save on database and post on home page
6. Use case Exit
Post
condition
Suggestion will be posted
27
Table 15 Structure of CRC card
Name
The name, located at the top of the card, describes the class that the CRC card represents.
Responsibility
A responsibility is something that a class knows or does, represented along the left side of the
card.
Collaborators
Responsibilities will collaborate with one or more other classes to fulfill one or more Scenarios.
Collaborators are listed on the right hand side of the CRC card, next to the responsibilities that
they are helping to realize.
Class name
Responsibility Collaborator
Admin( actor)
Manage account()
Manage house()
Generate report()
Send response()
View feedback()
View report ()
View news()
Admin
Customer( actor)
Reserve house()
View house()
Send leave request()
Send feedback()
Send request()
View report ()
View news()
Customer
28
2.4.3 Sequence diagram
UML sequence diagrams are used to show how objects interact in a given situation. A
sequence diagram is a form of interaction diagram which shows objects as lifelines running
down the page, with their interactions over time represented as messages drawn as arrows
from the source lifeline to the target lifeline. Generally, a sequence diagram shows object
interactions arranged in time sequence.
Employee ( actor)
Manage house()
Manage request()
view feedback()
Send response()
View report ()
View news()
Employee
Private Owner ( actor)
Manage house()
view feedback()
Private Owner
29
Figure 3 Create account sequence diagram
30
Figure 4 Log in sequence diagram
31
Figure 5 Send request sequence diagram
32
Figure 6 Registerhouse sequence diagram
33
Figure 7 Send feedback sequence diagram
34
Figure 8 Send response sequence diagram
35
2.3.4 Activity Diagram
Activity diagrams provide a way to model the workflow of a business process. Different tools
such as decisions, start states, end states, are used on the activity diagram. Activity diagram is
basically a flow chart to represent the flow form one activity to another activity. The activity
can be described as an operation of the system.
Figure 9 Login activity diagram
Figure 10 Register user activity diagram
36
Figure 11 Reserve house activity diagram
Figure 12 Generate report activity diagram
37
Figure 13 Delete house activity diagram
Figure 14 Send response activity diagram
38
Figure 15 Post house activity diagram
2.3.5 Conceptual modeling: Class diagram
UML class diagrams show the classes of the system, their interrelationships (including
inheritance, aggregation, and association) and the operations and attributes of the classes. Class
diagrams are used for a wide variety of purposes, including both conceptual/domain modeling
and detailed design modeling. A class model is comprised of one or more class diagrams and
the supporting specifications that describe model elements including classes, relationships
between classes, and interfaces. UML class diagrams show the classes of the system, their
inter-relationships, and the operations and attributes of the classes.
39
Figure 16 Class diagram
40
2.5 User Interface Prototyping
User interface (UI) prototyping is an iterative development technique in which users are
actively involved in the mocking-up of the UI for a system.
.
Figure 17 User Interface prototyping
2.6 Identifying change cases
The change happens in any systems. Any successful software needs to change and allows over
its life cycle. That is changes are motivated by new and/or modified requirements. The change
case as follows: User interface work on browser that support html codes and php code. The
systems will work sun Solaris server. The system will be written by JavaScript and php
language. The systems will use data contained existing mysql data base.
41
CHAPTER THREE: SYSTEM DESIGN
3 Introduction
In the previous chapter we have discuss the functional and non-functional requirements of the
system and produced the analysis model. In this chapter we are going to describe the current
and proposed system of architectural design. In addition to this we describe the access control
and security of our system. The overall system design objective is to give an efficient, modular
design that will reduce the system complexity, facilitate change and leads to an easy
implementation.
3.1 Design goal
Design goals describe the important system qualities. Design goals also define the values
against which options are evaluated. When designing a new system, a system designer creates
a model of the system from requirements made. The quality of the model highly determines
the quality of the product and future maintainability.
Design goals:-
 Response time: taking less time for system to respond to the request.
 Simplicity: we develop the new system can make user friendly graphical user interface.
 Reliability: the system must perform its intended functions and operations in a system's
environment. Without experiencing failure or system crash.
 Security: the system must be protected from an authorized access, threats, attacks and
vulnerabilities.
 Fault tolerance: the system must have the ability to satisfy requirements despite failures
such as hardware, software or network failures.
3.2 Class modeling diagram
UML class diagrams show the classes of the system, their interrelationships (including
inheritance, aggregation, and association) and the operations and attributes of the classes. Class
diagrams are used for a wide variety of purposes, including both conceptual/domain modeling
and detailed design modeling. A class model is comprised of one or more class diagrams and
the supporting specifications that describe model elements including classes, relationships
between classes, and interfaces. UML class diagram show the classes of the system, their inter-
relationships, and the operations and attributes of the classes.
42
Figure 18 Class Diagram
3.3 Current software architecture
Since it is manual system there is no current software architecture for house rental system.
3.4 Proposed software architecture
The architecture used for the proposed system is a 3 tier Client/Server Architecture. The client
tier is the applications user interface containing data entry forms and client side applications.
It displays data to the user. Users interact directly with the application through user interface.
The client tier interacts with the web/application server to make requests and to retrieve data
from the database. It then displays to the user the data retrieved from the server. A client can
use Internet browsers to access information from the server.
The middle tier (web/application server) implements the business logic, controller logic and
presentation logic to control the interaction between the application’s clients and data. The
controller logic processes client requests such as requests to view customer’s request, to record
Employee
approve request();
view request();
upload house();
Adminstrator
manage account();
manage house();
approve request();
Landlord
uplaod house();
manage house();
view house();
Customer
send request();
view house();
reserve house();
view location();
send feedback();
house
housenumber:int
kebele:char
price:double
User Account
+account type:char
-password:varchar
-username:char
-phonenumber:int
+firstname:varchar
+lastname:varchar
manages
1
1
has
1
manages
1
has
1
has
1
manages
1
upload
1
reserve
1
1
*
*
*
1
1
approve
*
*
1
43
or to retrieve data from the database. Business rules enforced by the business logic dictate how
clients can and cannot access application data and how applications process data.
A web server is a program that runs on a network server (computer) to respond to HTTP
requests. The most commonly used web servers is Apache. The web server used in this system
is Apache. HTTP is used to transfer data across an Intranet or the Internet. It is the standard
protocol for moving data across the internet.
The third tier, called the data tier, maintains the applications data such as house’s data customer
data etc. It stores these data in a relational database management system (RDBMS).
Figure 19 System architecture model for proposed system
3.4.1 Subsystem Decomposition
System decomposition is undertaken to reduce the complexity of the system and gaining insight
into the identity of the constituent components. The system is decomposed in to sub-systems
which are a collection of classes, associations, operations, events and constraints that are
closely interrelated with each other.
Client
Web server/Application server
Internet
HTTP
MYSQL
Database server
44
The proposed web based house rent system is decomposed in to smaller sub-system as shown
in the following figure. These sub-systems are further decomposed in to other sub-systems.
The major sub-system identified includes:-
Registration management: -this sub-system concern with customer to register their
Personal details and allow private owner and employee to register house information as well
as allow admin to register employee.
Account Management:-this subsystem allow customer and employee to create user account
before accessing the system as well as allow private owner and admin to delete user account
Feedback Management: - in this sub system the customers can raise their comments as well
as suggestions about the resource and system as well as allow private owner and administrator
to view and delete customer feedback.
Request management: - in this sub system the customers can send their request about the
house want to rent as well as allow private owner and administrator to view and delete customer
request.
House Management: - in this sub system the customers can view houses to be rented as well
as allow private owner and administrator to delete and update house information.
Location Management: - in this sub system the customers can view location of houses;
Administrator and private owner can set location of houses
Report Management: - in this sub system the customer and employee can view report
Generated by admin and allow admin to generate report about rented as well as unrented
Houses.
Response Management: - in this sub system the customer can view response generated by
admin and private owner and allow admin and private owner to send response to customer.
45
Figure 20 Subsystem Decomposition
3.4.2 Component Diagram
Component diagram is a special kind of diagram in UML. A component in the Unified
Modeling Language "represents a modular part of a system, that encapsulates its content and
whose manifestation is replaceable within its environment. It does not describe the
functionality of the system but it describes the components used to make those functionalities.
So from that point component diagrams are used to visualize the physical components in a
system. These components are libraries, packages, files etc. Component diagrams can also be
described as a static implementation view of a system. Static implementation represents the
organization of the components at a particular moment. A single component diagram cannot
represent the entire system but a collection of diagrams are used to represent the whole. So the
team is used this diagram.
Registration Management
register customer()
register house()
Report Management
send report()
view report()
delete report()
update report()
House Management
view house ()
update house()
register house ()
delete house ()
Account Management
create account()
delete accoount()
update account()
Request Management
send request()
view request()
Response Management
view response ()
Feedback Management
send feedback()
delete feedback()
update feedback()
Web based house Rental System
for Mettu City
46
Figure 21 Component Diagram
47
3.4.3 Deployment Diagram
This section describes the HW/SW mapping of the proposed system. To describe this we
have use the UML deployment diagram.
Figure 22 Deployment diagram
3.4.4 Persistence modeling for object oriented database
Persistent data management is basically used to represent the design of the database. Database
design is the process of producing a detailed data model of a database. Web based house rent
system will have database tables to store, access and maintain information that flows in the
system.
48
Figure 23 Persistence diagram
3.4.5 Access control and security
In the systems, different actors have access to different functionality and data. Therefore
these privileges prevent unauthorized users from accessing data’s which they don’t have
granted to access. Authentication: This take place by letting users to insert their user name and
password in the displayed login form.
Authorization: This takes place by preventing users from participating in specific tasks on
which he/she doesn’t have grant to access.
Function Actor
Customer Private
owner
Administrator Employee
Generate Report 
View Report    
49
View Customer request  
View location  
Register house
information
 
View house    
Send withdrawal
request

Delete house
information

Send response  
Update house
information
 
Register customer 
Reserve House 
Manage account    
upload private owner
house

View notification   
Table 16 Access control and security
3.5 Boundary conditions and exception handling
3.5.1 Boundary Conditions
Under this section we decide how the system is:-
 Started,
 Initialized, and
 Shut down.
We need to define how we deal with major failures. The system starts and shuts down going
through standard process. To start services first the server must start which is application and
database server. Then browser start on the client side and it establishes connection with the
server through the address of the Wamp. Then the server provides the requested service to the
50
clients. After the initialization process is completed, the user of the system will be presented
with a login screen.
The system is prepared with error handling facility as well. Invalid data entered by the user will
not be accepted by the system. When user-data-entry error happens, the system will display
appropriate error message and re-prompts to enter the correct data. Upon power failure, only
the current transaction will be lost.
The System is Client–Server architecture and allows a remote access. The following
requirements are mandatory on both Client and Server side. For example:
Client slide
 Internet connection should be available on the client side
 Web browser is demanding to connect with the web server of the system
 The customer should be legitimate and having an account provided by the system
 It should give the URL (Uniform Resource Locator) address of the web site.
 The customer communicates the different hyperlinks/pages using the homepage.
 The Customer can get different service from viewing the available information from
the system.
Server Side
 The system administrator/Web Master initiates and updates the system using his/her
preferred privileges
 The server side should be registered on the local or any other service provider.
 It should have Internet connection and database driven-website for remote access.
 It automatically save the changes and take backups.
3.5.2 Exception Handling
The system will display messages if it is tried to access using wrong/invalid account by
checking against the account table.
 The system provide alert when user insert invalid data.
 There will be a recovery mechanism so as to save temporary states in the case of network
link failure.
 If the user enters incorrect input like inserting empty string, inserting an incorrect
username in to the database or login with unregistered username and password the
system should display an appropriate message for each error. The system should handle
exceptions listed below.
51
 Login error (unauthorized login):-the system shall handle an attempt to login with
incorrect username and password and display appropriate message.
3.6 User Interface Design
User interface is the front-end application view to which user interacts in order to
use the system. The user interface is the main component that is used as a
communication medium between the user and the system. We do have a user
Interface as described below.
Home Page: this page appears as the site in which the system is deployed is opened
or accessed and contains some links which lead the user to other pages according to
his/her privilege, and if the user is authorized user or has an account, he/she will
directly go to the page that he want by entering correct username, password.
Otherwise they will sign up to have an account and access the system.
Figure 24 Home page
52
Create Account admin Page: this page appears as user has navigated to the admin
page it has a form that a user fills to create an account. User must fill username,
password, Id and type of an account `weather it is an administrator or gust account
to create his or her own account.
Figure 25 Create account admin page
53
CHAPTER FOUR: IMPLEMENTATION AND TESTING
4. Implementation
Introduction In this chapter we mainly focuses on the implementation part, implementation
concerned with the type of material (Hardware and software required), techniques to develop
the system, algorithm for the system, code samples of the system, data preparation, how to
install the system, some testing techniques, startup strategy for the new installed system are
briefly described in this part of documentation.
Sample code and their screen image
1. Login page of customer, employee, admin and private owner
<?php
session_start();
$con=mysqli_connect("localhost","root","","house");
if(!$con)
{
die("Error in connection".mysqli_connect_error());
}
?>
<HTML>
<html lang="en-US" xml:lang="en-US" xmlns=""/>
<head>
<title>House Rental </title>
<script type="text/javascript" src="css1/javascriptdate.js"></script>
<link rel="shortcut icon" href="favicon.ico" type="imagese/x-icon" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
54
<meta name="Keywords"
content="XML,tutorial,HTML,DHTML,CSS,XSL,XHTML,JavaScript,ASP,ADO,VBScript,
DOM,W3C,authoring,programming,learning,
beginner's guide,primer,lessons,school,howto,reference,free,examples,samples,source
code,demos,tips,links,FAQ,tag list,forms,frames,
color tables,Cascading Style Sheets,Active Server Pages,Dynamic HTML,Internet database
development,Webbuilder,Sitebuilder,Webmaster,
HTMLGuide,SiteExpert" />
<meta name="Description" content="HTML XHTML CSS JavaScript XML XSL ASP SQL
ADO VBScript Tutorials References Examples" />
<script>
function return check(){
var pass=document.getElementById("password");
if(pass.value==""){
alert("fill the blank");
return false;
}
else
{
return true;
}
}
</script>
<link rel="stylesheet" type="text/css" href="index's_file/globalcss.css" />
55
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "../https@ssl.default.htm" :
"../www./default.htm");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js'
type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-3855518-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
<script>
todayDate=new Date();
thisday=todayDate.getDay();
thismonth=todayDate.getMonth();
thisdate=todayDate.getDate();
thisyear=todayDate.getYear();
thisyear = thisyear % 100;
thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear));
if (((thisyear % 4 == 0)
&& !(thisyear % 100 == 0))
||(thisyear % 400 == 0)) monthdays[1]++;
startspaces=thisdate;
56
while (startspaces > 7) startspaces-=7;
startspaces = thisday - startspaces + 1;
if (startspaces < 0) startspaces+=7;
document.write("<table border=5 bgcolor=#egfofl width=215 height=210");
document.write("bordercolor=black><font color=black>");
document.write("<tr bgcolor=#b6c2cd><td colspan=8><center><strong>"
+ monthnames[thismonth] + " " + thisyear
+ "</strong></center></font></td></tr>");
linktrue=true;
}
}
}
if (count==thisdate) {
document.write("<font color='FF0000'><strong>");
}
if (count <= monthdays[thismonth]) {
document.write(count);
}
else {
document.write(" ");
}
if (count==thisdate) {
document.write("</strong></font>");
57
}
if (linktrue)
document.write("</a>");
document.write("</td>");
count++;
}
document.write("</tr>");
document.write("<tr>");
startspaces=0;
}
document.write("</table></p>");
</script>
</head>
<body onLoad="timeimgs('1');">
</style>
<center>
<table width="950" height="100" border=0px id="table1"bgcolor=""#000000"">
<tr>
<td align="center">
<table width="950px" border="0" cellpadding="0" cellspacing="0"
style="margin-bottom:-10px;margin-top:-4px;background-color:#787878;border-bottom:0px
color="#606060 ">
<tr border="0px">
58
<td width="529px" valign="middle" style="height:90px;text-align:left">
<img align="left" border="0" src="house photo/house 2.jpg" width="215" height="120" alt=
HOUSE RENTAL" title="Mettu City House Rental System" />
&nbsp;
<font color="#33ddaa"size="+2"><p align="left"valign="bottom"><img src="IMG/H01.png"
height="50%" width="70%"/></p></font>
</td>
<table width="950px" border="0px">
<tr>
<td width="950" height="29" background-color="606060" margin-top="-15">
<div id="topnav" >
<li><a href="home.php">Home</a></li>
<li><a href="housedatabase.php">viewhouse</a></li>
<li><a href="accountrequestcus.php">ActivationRequest</a></li>
<!--<li><a href="viewactivationresponse.php">Activation</a></li>-->
<li><a href="login.php">login</a></li>
</div>
</td>
</tr>
</table>
</table>
<table style="margin-top:-12px" width="950px" border="0"color:#606060 cellpadding="0"
cellspacing="0"background-color:#606060 " ><!--content table -->
<tr >
59
<td class="left_container" height="100" width="100px" valign="top" style="background-
color:#C0C0C0 " bgcolor="#C0C0C0 ">
<br> <br><br><br><br><br>
<p align="center"> <a href="aboutus.php">About Us</a><br></p>
<p align="center"> <a href="contactus.php">Contact Address</a><br></p>
<p align="center" > <a href="services.php">Services</a></p>
</td>
<td bgcolor=" #FFCCFF "valign="top"height="150px" width="325px" margin-top="0px"
border="0px" align-top="0px"><!--center -->
<div id="pagetitle" ><!-- InstanceBeginEditable name="pagetitle" --><b> Mettu city
house rental System</b><!-- InstanceEndEditable --></div>
</br>
<div id="mainContent1">
<br>
<div id="middletxtheadermain" align="left"><br/><center><img src="img/login.gif"
width="140px" height="110px" valign="top" /></center>
</div>
<div id="middletxt">
<FORM name="register" enctype="multipart/form-data" ACTION="login.php"
METHOD="post" onSubmit="return register_validation();">
<table border='1' style='width:325px;border:1px solid black;border-radius:10px;'
align='center'>
<td height="22" width="325px"><table width="325px" border=0>
<tr>
60
<td width="20" height="37" ><div align="left" margin-left="2px"><strong><font
color="#FF0000">*</font>usertype : </strong></div></td>
<td align="left">
<select id='usertype' name="usertype" required style="width:175px;" "height:20px;"
margin-left="2px"
<option></option>
<option>admin</option>
<option>Employee</option>
<option>customer</option>
<option>landlord</option>
</select>
</td>
</tr>
<tr>
<td width="80" height="37" ><div align="left"><strong><font
color="#FF0000">*</font>User Name : </strong></div></td>
<td width="80"><input type="tex" name="username" id="username"
maxlength="22"
style="border:1px #480000
solid;width:176px;height:25px;background:#FFFFFF;border-radius:5px;"placeholder="Enter
User name" required />
<!--<div class="example">(Only Lower case Allowed.)</div>--></td>
</tr>
<tr>
61
<td width="80" height="37"><div align="left"><strong><font
color="#FF0000">*</font>Password : </strong></div></td>
<td width="80"><input type="password" name="password" id="password"
maxlength="22"
style="border:1px #480000
solid;width:176px;height:25px;background:#FFFFFF;border-radius:5px;"
placeholder="Enter password" /></td>
</tr>
<tr> <center>
<td colspan="3"
align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" id="submitMain" name="submitMain" value="Login"
title="Click here to login" Onclick="return check(this.form);" />
<input type="reset" value=" CLEAR " onClick='focusReset()'
title="Click here to clear the text box"/>
</tr></center>
</td>
</tr>
<tr>
<td>&nbsp;</nbsp;>
<ul>
<td colspan="2"class='para1_text'>
62
<li style="display: block;float:right;text-decoration:none;padding: 8px;"><a
rel="facebox" href="forget.php"> *Forgot Password</a></li></ul></td>
</tr>
</table></td>
</tr>
</table>
<br><br>
</form>
<?php
if(isset($_POST['submitMain']))
{
$account_type=$_POST['usertype'];
$userid =$_POST['username'];
$_SESSION['username']=$userid;
$password=$_POST['password'];
$query = "SELECT * FROM account WHERE usertype = '{$account_type}' AND username
= '{$userid}' AND
password = '{$password}' ;";
$result_set=mysqli_query($con,$query);
if(!$result_set){
die("query is failed".mysqli_error());
63
}
$row=mysqli_fetch_assoc($result_set);
$stat=$row['status'];
if(mysqli_num_rows($result_set)>0)
{
if($stat==1)
{
if($account_type=="admin")
{
$_SESSION['username']=$row['username'];
echo "<script>window.location='admin.php';</script>";
}
else if($account_type=="Employee")
{
$_SESSION['username']=$row['username'];
echo "<script>window.location='employee.php';</script>";
}
else if($account_type=="landlord")
{
$_SESSION['username']=$row['username'];
echo "<script>window.location='landlord.php';</script>";
}
else if($account_type=="customer")
64
{
$_SESSION['username']=$row['username'];
echo "<script>window.location='customer.php';</script>";
}
//else
//{
//$_SESSION['validuser']=$user;
//echo "<script>window.location='#.php';</script>";
//}
}
else
{
print "<img src='IMG/error.png' align='center' width='35px' height='25px'><I><font
face='arial' color='black'
size='3'> Your Account is Deactivated! Send Activation Request. !!</font></I>";
}
}
else
{
echo '<div align="center"><strong><font color="#FF0000"> Account Type, User Name &
Password not match !!</font></Strong></div>';
}
65
}
mysqli_close($con);
?>
<br/><br/><br/><br/><br/><br/><br/><br/><br/>
<div
align="right">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</div>
</div>
<!-- end #mainContent -->
</div>
</div>
</td><!--center end-->
<td class="right_container" valign="top" width="100px" height="100px"">
<table class="right" style="margin-top:0px;color:#FFFF00;background-color:#c0c0c0"
width="100%" cellpadding="0" cellspacing="0" bgcolor="#c0c0c0">
<tr>
<td class="right" height="100px" width="100px" border="1px" valign="top"
align="center"bgcolor="#c0c0c0 "border="1px" >
<br><br><br><br>
<?php
66
echo"Today:";
echo(date('d-m-Y'));
echo"<div id='clock'></div>";
?>
<h2>Calender</h2>
<script lang="javascript">
monthnames= new
Array("January","Februrary","March","April","May","June","July","August","September","
October","November","Decemeber");
var linkcount=0;
function addlink(month, day, href) {
var entry = new Array(3);
entry[0] = month;
entry[1] = day;
entry[2] = href;
this[linkcount++] = entry;
}
Array.prototype.addlink = addlink;
linkdays = new Array();
monthdays = new Array(12);
monthdays[0]=31;
monthdays[1]=28;
monthdays[2]=31;
67
monthdays[3]=30;
monthdays[4]=31;
monthdays[5]=30;
monthdays[6]=31;
monthdays[7]=31;
monthdays[8]=30;
monthdays[9]=31;
monthdays[10]=30;
monthdays[11]=31;
todayDate=new Date();
thisday=todayDate.getDay();
thismonth=todayDate.getMonth();
thisdate=todayDate.getDate();
thisyear=todayDate.getYear();
thisyear = thisyear % 100;
thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear));
if (((thisyear % 4 == 0)
&& !(thisyear % 100 == 0))
||(thisyear % 400 == 0)) monthdays[1]++;
startspaces=thisdate;
while (startspaces > 7) startspaces-=7;
startspaces = thisday - startspaces + 1;
if (startspaces < 0) startspaces+=7;
68
document.write("<table border=0 bgcolor=#egfofl width=20 height=20");
document.write("bordercolor=black><font color=black>");
document.write("<tr bgcolor=#b6c2cd><td colspan=8><center><strong>"
+ monthnames[thismonth] + " " + thisyear
+ "</strong></center></font></td></tr>");
document.write("<tr>");
document.write("<td align=center>Su</td>");
document.write("<td align=center>Mo</td>");
document.write("<td align=center>Tu</td>");
document.write("<td align=center>We</td>");
document.write("<td align=center>Th</td>");
document.write("<td align=center>Fr</td>");
document.write("<td align=center>Sa</td>");
document.write("</tr>");
document.write("<tr>");
for (s=0;s<startspaces;s++) {
document.write("<td> </td>");
}
count=1;
while (count <= monthdays[thismonth]) {
for (b = startspaces;b<7;b++) {
linktrue=false;
document.write("<td>");
69
for (c=0;c<linkdays.length;c++) {
if (linkdays[c] != null) {
if ((linkdays[c][0]==thismonth + 1) && (linkdays[c][1]==count)) {
document.write("<a href="" + linkdays[c][2] + "">");
linktrue=true;
}
}
}
if (count==thisdate) {
document.write("<font color='FF0000'><strong>");
}
if (count <= monthdays[thismonth]) {
document.write(count);
}
else {
document.write(" ");
}
if (count==thisdate) {
document.write("</strong></font>");
}
if (linktrue)
document.write("</a>");
document.write("</td>");
70
count++;
}
document.write("</tr>");
document.write("<tr>");
startspaces=0;
}
document.write("</table></p>");
</script>
<br/><br/><br/><br/><br/><br/><br/><br><br/><br/>
</td>
</tr>
</table>
</td>
</tr></table><!--content table end-->
<table width="953px" height="42px" border="1" background-color="#282828">
<tr width="953"style="margin-bottom:1px;margin-top:1px;background-color:#606060
;border:0px solid #ffffff" border="0px" cellpadding="10" cellspacing="0">
<td valign="top" align="center">
<marquee value="right"><font color="#fef943" face="arial">&copy; 2021 @ Mettu City
House Rental System.</font></marquee></td></tr></table>
</td></tr></table>
</center>
</body>
71
</html>
2. Customer request to rent house
<?php
include("validation.php");?>
<HTML>
<html lang="en-US" xml:lang="en-US" xmlns=""/>
<head>
<title>House Rental </title>
<script type="text/javascript" src="css1/javascriptdate.js"></script>
<link rel="shortcut icon" href="favicon.ico" type="imagese/x-icon" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Keywords"
content="XML,tutorial,HTML,DHTML,CSS,XSL,XHTML,JavaScript,ASP,ADO,VBScript,
DOM,W3C,authoring,programming,learning,beginner's
guide,primer,lessons,school,howto,reference,free,examples,samples,source
code,demos,tips,links,FAQ,tag list,forms,frames,color tables,Cascading Style Sheets,Active
Server Pages,Dynamic HTML,Internet database
development,Webbuilder,Sitebuilder,Webmaster,HTMLGuide,SiteExpert" />
<meta name="Description" content="HTML XHTML CSS JavaScript XML XSL ASP SQL
ADO VBScript Tutorials References Examples" />
<link rel="stylesheet" type="text/css" href="index's_file/globalcss.css" />
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "../https@ssl.default.htm" :
"../www./default.htm");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js'
type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-3855518-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
</head>
72
<body onLoad="timeimgs('1');">
</style>
<center>
<table width="950" height="100" border=0px id="table1"bgcolor=""#000000"">
<tr>
<td align="center">
<table width="950px" border="0" cellpadding="0" cellspacing="0"
style="margin-bottom:-10px;margin-top:-4px;background-color:#787878;border-bottom:0px
color="#606060 ">
<tr border="0px">
<td width="529px" valign="middle" style="height:90px;text-align:left">
<img align="left" border="0" src="house photo/hOUSE 2.jpg" width="215" height="120" alt=
HOUSE RENTAL" title="Mettu City House Rental System" />
&nbsp;
<font color="#33ddaa"size="+2"><p align="left"valign="bottom"><img src="IMG/H01.png"
height="50%" width="70%"/></p></font>
</td>
<table width="950px" border="0px">
<tr>
<td width="950" height="29" background-color="606060" margin-top="-15">
<div id="topnav" >
<li><a href="home.php">Home</a></li>
<li><a href="housedatabase.php">viewhouse</a></li>
<li><a href="accountrequestcus.php">ActivationRequest</a></li>
<li><a href="viewactivationresponse.php">Activation</a></li>
<li><a href="login.php">Login</a></li>
</div>
</td>
</tr>
</table>
</table>
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx
web based house rental system phaseII.docx

More Related Content

What's hot

School management system
School management systemSchool management system
School management system
Soumya Behera
 

What's hot (20)

Online property management system design document
Online property management system design documentOnline property management system design document
Online property management system design document
 
Report of Student management system
Report of Student management systemReport of Student management system
Report of Student management system
 
BSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - NepalBSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - Nepal
 
Online Hostel Management System Proposal
Online Hostel Management System Proposal Online Hostel Management System Proposal
Online Hostel Management System Proposal
 
Hostel management system (5)
Hostel management system (5)Hostel management system (5)
Hostel management system (5)
 
College Management System
College Management SystemCollege Management System
College Management System
 
Student information system
Student information systemStudent information system
Student information system
 
SRS for smart health care system,srs for health system,health management doc...
SRS  for smart health care system,srs for health system,health management doc...SRS  for smart health care system,srs for health system,health management doc...
SRS for smart health care system,srs for health system,health management doc...
 
Student database management system PROJECT
Student database management system PROJECTStudent database management system PROJECT
Student database management system PROJECT
 
Hostel management system srs
Hostel management system srsHostel management system srs
Hostel management system srs
 
School management system
School management systemSchool management system
School management system
 
Airline Reservation System - Software Engineering
Airline Reservation System - Software EngineeringAirline Reservation System - Software Engineering
Airline Reservation System - Software Engineering
 
Library management system
Library management systemLibrary management system
Library management system
 
Event managementsystem
Event managementsystemEvent managementsystem
Event managementsystem
 
Online news 365
Online news 365Online news 365
Online news 365
 
Hostel management project_report
Hostel management project_reportHostel management project_report
Hostel management project_report
 
online news portal system
online news portal systemonline news portal system
online news portal system
 
SRS For Online Store
SRS For Online StoreSRS For Online Store
SRS For Online Store
 
Student Management System
Student Management SystemStudent Management System
Student Management System
 
Billing and Invoice Management System
Billing and Invoice Management SystemBilling and Invoice Management System
Billing and Invoice Management System
 

Similar to web based house rental system phaseII.docx

Agriculture editted commented 1st draft.docx
Agriculture   editted commented 1st draft.docxAgriculture   editted commented 1st draft.docx
Agriculture editted commented 1st draft.docx
FayyoOlani
 
Web 2.0 In Gov Report David Osimo
Web 2.0 In Gov Report  David OsimoWeb 2.0 In Gov Report  David Osimo
Web 2.0 In Gov Report David Osimo
klenihan
 
Design and Development of a Knowledge Community System
Design and Development of a Knowledge Community SystemDesign and Development of a Knowledge Community System
Design and Development of a Knowledge Community System
Huu Bang Le Phan
 
Online-Voting-System.doc
Online-Voting-System.docOnline-Voting-System.doc
Online-Voting-System.doc
ShangaviS2
 

Similar to web based house rental system phaseII.docx (20)

Agriculture editted commented 1st draft.docx
Agriculture   editted commented 1st draft.docxAgriculture   editted commented 1st draft.docx
Agriculture editted commented 1st draft.docx
 
REPORT ON SUMMER TRAINING IN MEMS AT CSIR-CEERI
REPORT ON SUMMER TRAINING IN MEMS AT CSIR-CEERIREPORT ON SUMMER TRAINING IN MEMS AT CSIR-CEERI
REPORT ON SUMMER TRAINING IN MEMS AT CSIR-CEERI
 
Inventory Managment
Inventory ManagmentInventory Managment
Inventory Managment
 
Web 2.0 In Gov Report David Osimo
Web 2.0 In Gov Report  David OsimoWeb 2.0 In Gov Report  David Osimo
Web 2.0 In Gov Report David Osimo
 
My project
My projectMy project
My project
 
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docxCLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
 
Ignou MCA mini project report
Ignou MCA mini project reportIgnou MCA mini project report
Ignou MCA mini project report
 
ELECTRONIC COURT CASE MANAGEMENT SYSTEM_Project
ELECTRONIC COURT CASE MANAGEMENT SYSTEM_ProjectELECTRONIC COURT CASE MANAGEMENT SYSTEM_Project
ELECTRONIC COURT CASE MANAGEMENT SYSTEM_Project
 
Thesis
ThesisThesis
Thesis
 
The application of process mining in a simulated smart environment to derive ...
The application of process mining in a simulated smart environment to derive ...The application of process mining in a simulated smart environment to derive ...
The application of process mining in a simulated smart environment to derive ...
 
MANUSCRIPT.docx
MANUSCRIPT.docxMANUSCRIPT.docx
MANUSCRIPT.docx
 
Design and Development of a Knowledge Community System
Design and Development of a Knowledge Community SystemDesign and Development of a Knowledge Community System
Design and Development of a Knowledge Community System
 
Report it department concord(retyped)
Report it department concord(retyped)Report it department concord(retyped)
Report it department concord(retyped)
 
Determinants of computer ownership - case of households in Vietnam.pdf
Determinants of computer ownership - case of households in Vietnam.pdfDeterminants of computer ownership - case of households in Vietnam.pdf
Determinants of computer ownership - case of households in Vietnam.pdf
 
Realtimesamplingofutilization
RealtimesamplingofutilizationRealtimesamplingofutilization
Realtimesamplingofutilization
 
Online-Voting-System.doc
Online-Voting-System.docOnline-Voting-System.doc
Online-Voting-System.doc
 
Smart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportSmart Traffic Monitoring System Report
Smart Traffic Monitoring System Report
 
19_unit 1 PPT-1.ppt
19_unit 1 PPT-1.ppt19_unit 1 PPT-1.ppt
19_unit 1 PPT-1.ppt
 
Accident detection and notification system
Accident detection and notification systemAccident detection and notification system
Accident detection and notification system
 
Android based crime manage system industrial project i
Android based crime manage system industrial project iAndroid based crime manage system industrial project i
Android based crime manage system industrial project i
 

Recently uploaded

Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
EADTU
 

Recently uploaded (20)

Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17How to Manage Call for Tendor in Odoo 17
How to Manage Call for Tendor in Odoo 17
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfUGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
Our Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdfOur Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
What is 3 Way Matching Process in Odoo 17.pptx
What is 3 Way Matching Process in Odoo 17.pptxWhat is 3 Way Matching Process in Odoo 17.pptx
What is 3 Way Matching Process in Odoo 17.pptx
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptx
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdf
 

web based house rental system phaseII.docx

  • 1. METTU UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY PROJECT TITLE: - WEB BASED HOUSE RENTAL SYSTEM FOR METTU CITY SUBMITTED TO:-DEPARTMENT OF INFORMATION TECHNOLOGY; METTU UNIVERSISTY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR B.SC. DEGREE IN INFORMATION TECNOLOGY INDUSTRIAL PROJECT I I Advisor: Mr. Prathap (Prof.) Mettu,Oromia,Ethiopia August 31,2021
  • 2. I Declaration This is to declare that the project is done with 4th year Information Technology Department under title of web based house rental system for Mettu city. INDUSTRIAL PROJECT I SUBMITTED BY: 1. Daniel Benti RU/ 2358/10 2. Gelana Leta RU/ 2419/10 3. Geda Abera RU/ 1857/10 4. Yared Asefa RU/ 1224/10 5. Firomsa Ababe RU /152/10 Examination Board: 1._________________________ _____________________ ________________ Advisor Name Signature Date 2.________________________ _____________________ ________________ Examiner Name Signature Date 3. ________________________ _____________________ ________________ Examiner Name Signature Date
  • 3. II Acknowledgement First of all, the project team would like to greatly thank God, who gave us the power to understand and to better analyzed the system. Secondly, we would like to thank our Advisor Mr. Prathap (Prof.) for his valuable comments, support, and guidance throughout this project work. Thirdly, we would like to thank for all Mettu city house register office employees who gives the necessary information for our project. Finally, we would like to thank our groups and friends for their encouragement and support throughout this project work.
  • 4. III Table of Contents Declaration....................................................................................................................................I Acknowledgement........................................................................................................................II Table of Contents ........................................................................................................................III List of tables ...............................................................................................................................VI List of figures.............................................................................................................................VII Abstract....................................................................................................................................VIII List of Acronym’s........................................................................................................................IX CHAPTER ONE.......................................................................................................................... 1 1 Introduction .......................................................................................................................... 1 1.1 Background................................................................................................................... 1 1.2 Statement of the problem................................................................................................ 2 1.3 Objective of the project......................................................................................................3 1.3.1 General objective of the system................................................................................... 3 1.3.2 Specific objective of the system................................................................................... 3 1.4 System development Methodology ..................................................................................... 3 1.4.1 Data collection methodology....................................................................................... 3 1.4.2 System development approach .................................................................................... 4 1.5 Hardware and software tools .............................................................................................. 4 1.5.1 Hardware tools .......................................................................................................4 1.5.2 Software tools ........................................................................................................4 1.6 Feasibility Study................................................................................................................ 5 1.6.1 Operational Feasibility................................................................................................ 5 1.6.2 Economic feasibility...................................................................................................5 1.6.3 Technical Feasibility...................................................................................................6 1.6.4 Schedule Feasibility....................................................................................................7 1.7 Project Scope and Limitation.............................................................................................. 7 1.7.1 Scope of the project....................................................................................................7 1.7.2 Limitation of the project ............................................................................................. 8 1.8 Significance of the project..................................................................................................8 1.9 Time Schedule................................................................................................................... 9 1.10 Risk..................................................................................................................................9 1.10.1 Risk Assessment and management............................................................................... 9 CHAPTER TWO: ANALYSIS.................................................................................................... 10
  • 5. IV 2.1 INTRODUCTION............................................................................................................. 10 2.2 Existing System........................................................................................................... 11 2.2.1 Description of the Existing System............................................................................ 11 2.2.2 Supplementary Requirements.................................................................................... 11 i) Business rule ................................................................................................................... 11 a) Business rule of proposed system...................................................................................... 12 b) Business rules of existing system...................................................................................... 12 2.2.3 Constraints of the system.......................................................................................... 12 2.3 New System................................................................................................................ 12 2.3.1 Requirement Analysis of the New System.................................................................. 13 2.3.2 Functional requirement ......................................................................................... 13 2.3.3 Nonfunctional requirement.................................................................................... 14 2.4 Use Case Model........................................................................................................... 15 2.4.3 System use case description ...................................................................................... 20 2.4.4 Key abstraction with CRC analysis............................................................................ 26 2.4.3 Sequence diagram .................................................................................................... 28 2.3.4 Activity Diagram............................................................................................................ 35 2.3.5 Conceptual modeling: Class diagram ............................................................................... 38 2.5 User Interface Prototyping................................................................................................ 40 2.6 Identifying change cases........................................................................................................ 40 CHAPTER THREE: SYSTEM DESIGN ..................................................................................... 41 3 Introduction .................................................................................................................... 41 3.1 Design goal................................................................................................................. 41 3.2 Class modeling diagram ............................................................................................... 41 3.3 Current software architecture........................................................................................ 42 3.4 Proposed software architecture ......................................................................................... 42 3.4.1 Subsystem Decomposition ........................................................................................ 43 3.4.2 Component Diagram................................................................................................. 45 3.4.3 Deployment Diagram ............................................................................................... 47 3.4.4 Persistence modeling for object oriented database....................................................... 47 3.4.5 Access control and security....................................................................................... 48 3.5 Boundary conditions and exception handling..................................................................... 49 3.6 User Interface Design ...................................................................................................... 51 CHAPTER FOUR: IMPLEMENTATION AND TESTING ......................................................... 53
  • 6. V 4. Implementation ............................................................................................................... 53 4.1 Testing........................................................................................................................ 81 4.1.1 Sample testing.......................................................................................................... 82 4.2 Sample Unit Testing..................................................................................................... 82 4.2.1 Installation............................................................................................................... 83 4.2.2 Client Feedback ....................................................................................................... 83 CHAPTER FIVE: CONCLUSION AND RECOMMENDATION ................................................ 84 3. CONCLUSION............................................................................................................... 84 5.1 RECOMMENDATION........................................................................................................ 85 (REFERENCES)........................................................................................................................ 86
  • 7. VI List of tables Table 1 Budget estimation of the project ........................................................................................ 6 Table 2 Schedule feasibility of the project ...................................................................................... 7 Table 3 Time schedule feasibility of the project .............................................................................. 9 Table 4 : Use Case Component (scenario) .................................................................................... 17 Table 5 Login use case description............................................................................................... 20 Table 6 Send request use case description..................................................................................... 21 Table 7 Register house use case description.................................................................................. 22 Table 8 Delete house information use case description .................................................................. 22 Table 9 View customer request use case description...................................................................... 23 Table 10 View house use case description .................................................................................... 24 Table 11 Send response use case description ................................................................................ 24 Table 12 Update house use case description ................................................................................. 25 Table 13 Send feedback use case description ................................................................................ 26 Table 14 Logout use case description........................................................................................... 26 Table 15 Structure of CRC card................................................................................................... 27 Table 16 Access control and security ........................................................................................... 49 Table 17 Testing......................................................................................................................... 82 Table 18 Unit Testing.................................................................................................................. 83
  • 8. VII List of figures Figure 1 Essential use case diagram............................................................................................. 18 Figure 2 Use case diagram........................................................................................................... 19 Figure 3 Create account sequence diagram................................................................................... 29 Figure 4 Log in sequence diagram........................................................................................... 30 Figure 5 Send request sequence diagram ...................................................................................... 31 Figure 6 Register house sequence diagram ................................................................................... 32 Figure 7 Send feedback sequence diagram.................................................................................... 33 Figure 8 Send response sequence diagram.................................................................................... 34 Figure 9 Login activity diagram................................................................................................... 35 Figure 10 Register user activity diagram ...................................................................................... 35 Figure 11 Reserve house activity diagram .................................................................................... 36 Figure 12 Generate report activity diagram................................................................................... 36 Figure 13 Delete house activity diagram....................................................................................... 37 Figure 14 Send response activity diagram..................................................................................... 37 Figure 15 Post house activity diagram......................................................................................... 38 Figure 16 Class diagram.............................................................................................................. 39 Figure 17 User Interface prototyping............................................................................................ 40 Figure 18 Class Diagram............................................................................................................. 42 Figure 19 System architecture model for proposed system............................................................. 43 Figure 20 Subsystem Decomposition ........................................................................................... 45 Figure 21 Component Diagram.................................................................................................... 46 Figure 22 Deployment diagram ................................................................................................... 47 Figure 23 Persistence diagram..................................................................................................... 48 Figure 24 Home page.................................................................................................................. 51 Figure 25 Create account admin page........................................................................................... 52 Figure 26 Login page .................................................................................................................. 79 Figure 27 send activation request................................................................................................ 80 Figure 28 Employee page............................................................................................................ 80 Figure 29 Account create page..................................................................................................... 81
  • 9. VIII Abstract The main objective of this project is to study and understand the current system problems and provide an automated system as a solution to enable the house rent to cope up with technological advancement. The project provides a web-based house rental activities. This project is aimed to develop a system that handles manual work operation of staff workers by providing different utilities for the renting system. The project replaces the manual file handling system into computerized system and it makes secure the processes by providing different security mechanisms.
  • 10. IX List of Acronym’s BR …………………Business rule CSS…………………cascading style sheet DB …………………database MCHRS ……………Mettu City House Rental System GPS………………..global positioning system HTML……………….hypertext markup language OOA………………..object oriented analysis OOAD……………..object oriented analysis and design OOD……………….object oriented design OOSAD……………..object oriented system analysis and design OOSD………………. object oriented system development PHP………………… hypertext pre processor REQ………………… requirement SQL………………… structured query language SRS…………………. Software Requirement Specification UI…………………..user interface UML -------------------Unified modeling language
  • 11. 1 CHAPTER ONE 1 Introduction Due to its numerous benefits nowadays computers are involved in every sectors of life, in wide range of applications. And even in some areas mankind has been totally dependent on computers. One of the remarkable and much known products of technology advancement is the conversion of manually-operated system into automated system. Automation produces a great impact in the lives of mankind, particularly in the field of industry, business, medicine, technology and education. Renting a home is popular with peoples from all walks of life. Typically students and employees that are moving temporarily will share house renting. Basically we are initiated to develop this system because all most all of Mettu city employees get suffer about house renting even they leave with their relatives until they find house that was really difficult to do practically therefore, we are developing this system today. The main purpose of this project is to develop and implement a web based application “online house renting system” in order to implement web based house property system to help renters to provide reliable services. These systems tend to us to find possible solution about the problem it helps user to access the system easily. 1.1 Background Mettu is one of the beautiful cities found in Ethiopia. The city is found in the South-Western parts of Ethiopia. Located in the Illubabor Zone of the Oromia Region. Which is 600km far from Addis Ababa Ethiopia. Currently the city has no automated house renting system for customers. Since the city is wide it is harder to find houses for renting in such wide city. In Mettu Town the population growth is increasing day to day that means different branch offices are opened like Mettu University, this university and other company’s needs employees and teachers to work in their company and these employees need house to serve their life. So we have started to develop new web based application of house renting relative with current problem of the city we have started by studying the detail of the system.
  • 12. 2 1.2 Statement of the problem Mettu city is a very wide city, therefore to rent or finding a house in this city is taken as a problem. The other problem is increasing the number of people come to Mettu from day to day for different reasons and they want to rent a house. And also Mettu city house development office registers customers on the paper. This paper based or manual based system leads to different problems. Moreover data is not secure from accident or damage as well as it is not well organized because of this the efficiency of the working system is not good and as the amount of the customer increase the waiting time of the customer will be increase also the customers do not get better service as they need, then they may lose their time until they register. Generally the main and observed problems are:-  Man power wastage:-renters lose their energy by finding house on foot from place to place even they cannot get house because most of houses are reserved and they cannot know where they can get free house exactly.  Wastage of money:-renters waste their money for coordinators payment and for taxi in order to go the office.  Difficult for customers to withdraw from house: - Since the system is manual it is difficult to drop the files of customer’s on the paper.  Coordinators or brokers false information:-coordinators give uncertain information for renter when the renters will find the house with coordinators since the renter did not get the house as he/she expect.  Data Redundancy: - There is redundancy in renting new houses. Coordinators or brokers may take payment from different peoples and they will give the house for the one who gives more money for them this leads to conflict among them.  Prone to error: - Since manual systems are done by human being’s it is prone to error.  Files are not secure:-There is no authentication mechanism to secure the files. Therefore files are easily accessible by any one.
  • 13. 3 1.3 Objective of the project For a better understanding we put our objectives in two sections: specific and general objective. 1.3.1 General objective of the system The general objective of the system is to develop and design a web based house rental system for Mettu city. 1.3.2 Specific objective of the system To achieve general objective of the system we used the following specific objectives.  To gather required information for proposed system by using interview, observation, and document analysis.  To Analyze the gathered information using SRS  To Compare and contrast the proposed system with existing system  To Design the proposed system using UML diagram.  To Design a user interface for the proposed system  To Design a database for the proposed system  To Design implementation for the proposed  To Test the proposed system 1.4 System development Methodology 1.4.1 Data collection methodology  Observation: - It is fact finding technique where the system analyst either participates in or watches a person performs activities to learn about the system. It gives us better measurement than the authorized personnel and we will be able to see exactly what is being done, it is expensive and highly reliable. By observing the existing problem we are gathering the data. Also we have referred other senior projects. And we observe the entire broker working procedures and renters.  Interview:-It is fact finding technique where by the system analyst collects information from individual face to face interaction. It gives as an opportunity to motivate the interviewee to respond freely and openly and it allows us to prove for more feedback from the interviewee. In addition we believe that we adapt reward questions for each individual. Having an interview making questionnaires and observing in the around problems. Also we collected raw data or documents which are useful for the project should be implemented.  Document analysis: the project team tried to discover written documents about the organizational areas relevant to the project.
  • 14. 4 1.4.2 System development approach In this project, we would use object oriented system development methodology (OOSD) for designing. OOSD in modern software engineering is best conducted in an iterative and incremental way. Iteration by iteration, the outputs of OOAD activities, analysis models for OOA and design models for OOD respectively, will be refined and evolve continuously driven by key factors like risks and business value so in this project we use OOSD due to the above task as well as easier to use in our skill and not as much cost. We select this because of the following advantages:-  To simplify the design and implementation of complex program.  To make it easier for teams of designers and programmers to work in a single software project.  To enable a high degree of reusability of designs and software codes. Increased consistency among analysis, design and programming activities 1.5 Hardware and software tools 1.5.1 Hardware tools The hardware Requirements needed to complete the proposed system are:  Flash Disk -To store and transfer files.  CD -To submit the final document.  Computer: - to develop our system we use a laptop which has the following properties.  Windows 8 or 10 OS  The capacity of RAM is 4GB 1.5.2 Software tools In order to achieve our objectives successfully we are using various software tools depending on their purpose. For example:-  Microsoft Office Word 2010/2013:- to write proposal and documentation part of the project  Draw.io:-for drawing UML software diagrams.  Browser:-like chrome, Firefox, opera will be used for searching information for designing and developing.  MicrosoftPowerPoint20010/2013:-will be used to prepare presentation of this project documentation.  MYSQL server: -for developing the database  Wamp Server- used to run server side scripting language of the project.
  • 15. 5 1.6 Feasibility Study A feasibility study is an analysis used in measuring the ability and likelihood to complete a project successfully including all relevant factors. It must account for factors that affect it such as economic, technological, legal and scheduling factors. Project managers use feasibility studies to determine potential positive and negative outcomes of a project before investing a considerable amount of time and money into it. It is the measure of evaluates and analysis of the project’s potential for success. 1.6.1 Operational Feasibility The proposed system has been operationally functional and user friendly. The users of system use the system to perform its regular task without any ambiguity. The user of the system can understand the new system with little trial. Operationally the system has capable of producing quick and qualitative services to users therefore the system developed is operationally more feasible. Operational feasibility assesses the extent to which the required software performs a series of steps to solve business problems and user requirements. This feasibility is dependent on human resources (software development team) and involves visualizing whether the software will operate after it is developed and be operative once it is installed. It determines how the system satisfies the organizations need and it also offers secure, accurate and efficient system to the organization. The system in which we will have developed is also compatible to all operating systems. Operational feasibility also performs the following tasks:-  Determines whether the problems anticipated in user requirements are of high priority.  Determines whether the solution suggested by the software development team is acceptable.  Analyzes whether users will adapt to new software.  Determines whether the organization is satisfied by the alternative solutions proposed by the software development team.  User friendly-the system will be easy and user friendly to be acceptable of users. 1.6.2 Economic feasibility The purpose of economic feasibility assessment is to determine the positive economic benefits to the organization that the proposed system provides. It includes quantification and Identification of all the benefits expected. This assessment typically involves a cost/benefits analysis. House rent site is available to anybody and anywhere. So the system is more functional in reducing costs from both users and the owner.
  • 16. 6 Some benefits the system provides are:-  Small response time and many services.  Easy and fast file management.  Reduce cost for manual data management (Reduced expenses).  Easy update & retrieval on stored records. Our system is economically feasible, because it reduces the time needed to perform certain actions such as budget to cover man-power, paper and pen which they are using for manual work. Material and Additional thing Number item of Cost per item/Birr single Total/Birr 16GB Flash disk 1 220 200 Pen 5 10 50 A4 size paper 1/2 Desta 0.5 125 Print of document 120 sheet 2 240 Total = 615 Table 1 Budget estimation of the project 1.6.3 Technical Feasibility The technical feasibility is primarily concerned with ascertaining whether the needed technology is existed to accomplish things as have been suggested. Technical feasibility assesses the current resources (such as hardware and software) and technology, which are required to accomplish user requirements in the software within the allocated time and budget. Technical feasibility also performs the following tasks. Analyzes the technical skills and capabilities of the software development team members, and determines whether the relevant Technology is stable and established. The proposed system is technically feasible as:  This project is practically applicable with in the current technology.  The software used to implement the system is well understood by the group members. We have technical knowledge about:  PHP used as an interface with WAMP.  Notepad/Notepad++ to write and edit the code.  MYSQL to build the database for storing the data.
  • 17. 7  Unified Modeling Language (UML) model to do analyzing and designing in good manner. 1.6.4 Schedule Feasibility The time given for this project is around four month. According with our time duration, we have listed the activities in accomplishing the project work with its schedule requirement which are listed on the table below No. Activities April 28,2013 to May 5,2013 May 6,2013 to May 29,2013 May 30,2013 to June 12,2013 June 13,2013 to Aug 30,2013 Sept 1,2014 to Sept3,2014 Sept 3,2014 to Sep 9,2014 1 Proposal submission& documentation 2 Requirement gathering & analysis 3 Requirement Elicitation & specification 4 System Design 5 Implementation 6 Testing Table 2 Schedule feasibility of the project 1.7 Project Scope and Limitation 1.7.1 Scope of the project The scope of the project can be described as the overall features of what the new system is capable of doing. This system has different features which make things easier for the office. Generally our proposed system will support the following features.  The system registers and post houses.  The system manages all users account.  The system updates house information.  The system view reserved house and free house  The system sends request.  The system view request.
  • 18. 8  The system sends response to the customers.  The system view houses information  The system view customers’ requests  The system send withdrawal request  The system generates report  The system send feedback 1.7.2 Limitation of the project  Our system does not support online money transactions.  Our system has also limitations on a place that has not internet accessibility because it is depend on connection since it is online.  The limitation of our system is that all users may not be participating directly to the system since it is not done by a local language.  Our system does not support GPS system for locating houses.  It does not include kebele houses 1.8 Significance of the project After implementing the project our proposed system provides many advantages for customers, employees as well as administrator. The main significance of the project includes:  Customers will reserve house by selecting the place, type of house and the cost they can pay by viewing all recorded house details.  Houses will rent with short time.  Houses can become available to customers within the time of they want to rent.  The system is more secured than existing one so files cannot be lost easily.  It increases performance of the system.  It makes disabled persons participant in the service.  Save time, money, and other related things.  Decrease the difficulties of customer.  Makes the system user friendly.  Motivate the people to use online system.  Provide knowledge and internet service for the people.  Easy and manageable report
  • 19. 9 1.9 Time Schedule This refers the tasks that will be performed in the scheduled time. Based on the time we have, each task of our project will be proceeding based on the following time line. No. Task name April 28,2013 to May 5,2013 May 6,2013 to May 29,2013 May 30,2013 to June 12,2013 June 13,2013 to August 30,2013 September 1,2014 to September 3,2014 September 3,2014 to Sep 9,2014 1 Requirement gathering 2 System analysis 3 System design 4 Implementing 5 Testing 6 Submission date Table 3 Time schedule feasibility of the project 1.10 Risk Some Risks and Contingencies that may happen during the development of the system are includes absence of electric power, if backup files were destroyed by someone else, There may be risks during the development of the system, some actions may occur when we are doing our project (Those actions may be damaged our system that is why we say risk). There may be losing data from our machine (computer) when there is power failure operating system scratched, and if there is absence of team member during working because of different problems. 1.10.1 Risk Assessment and management Technical Risks:These risks may result from excessive constraints, lack of experience, poorly defined parameters, or dependencies on organizations outside the direct control of the project
  • 20. 10 team. In order to mitigate or control this risk the team will perform periodic checks on the work that have been done, and by using continuous advice provided from the project advisers. Requirement changes: since this risk leads to system poor communication resulting in misunderstandings and quality problems, the team altered participatory type of data modeling to overcome such risks. In addition there are other risks like power frailer, virus attack, when one group members fail to continue with us CHAPTER TWO: ANALYSIS 2.1 INTRODUCTION Requirement analysis is the initial step of constructing the whole software system. It is a description of the project requirements that we have been gathered and analyzed. Without requirements, the goal is not clear and understandable. In this chapter, requirements of the software system are defined through human natural language and use case. The document is provided in order to ensure that the software we produce will be consistent with the need of the system’s user or customer. During this phase, the analysis and system modeling must become full aware of functional requirements, nonfunctional requirement of the proposed system, boundaries of the system using use case description, Use-case diagram, showing the behavior of the system and the communication among objects using sequence diagram and describing the structure of the system using class diagram.
  • 21. 11 The aim of this document is to gather and analyze and give an Interactive system by defining the current system problem statement in detail. 2.2 Existing System 2.2.1 Description of the Existing System The existing house rental system in Mettu Town currently uses the traditional way of searching of house. The owner that wants to rent writes the vacancy (some information) about house and tag it on the door then the customer read that vacancy and contact with him for renting purpose. Once a customer finds a vacant house after a long journey, they can call the renter of the house by the contact information tagged to the house. And if they can reach at an agreement, mutual third party is mandatory for them to sign an agreement contact that deals about price and different conditions. Since it is manual based the existing system has faced many problems. Among Those problems which includes poor performance, prone to error and poor productivity are listed out. The other problem is that data management related problems this implies the data is not easily accessible, not well organized, not secure from damage and the data is stored redundantly in the form of multiple copies of files. Since it is manual based the system is not efficient, do not give better quality service as customers need. Due to this reason customers do not satisfy with the service. As customer increase the waiting time of customer to register is increase. Due to this reason customers lose their time and money until they are registered. Currently the office work’s manually. The office register customer’s on the paper. Since it is paper based or manual based it leads to different problems. One of the problems that are caused by this manual based system is that loss of the file. This implies that the information is simply put on paper without any recovery mechanism. Since this papers are easily movable by peoples, other people may intentionally or unintentionally loss the file. The main problem is that there is no any modern tool to search and find houses for renting as well as showing the location of houses for customers. Due to this Reason new customers may face different difficulties. Among those difficulties customers may lose money for brokers. Brokers may also give incorrect information about the house. This leads to customers too difficult to change or leave the house after renting if the house is not comfortable to live or work. New customer’s money or other things may be stolen by thieves since there is no information about the thieves or the people. 2.2.2 Supplementary Requirements i) Business rule A business rule is effectively an operating principle or polices that must be fulfilled and Obligated in order the system will function properly and effectively. It often related to access Control
  • 22. 12 issues, business calculations, or operating polices and principles of the organization. The rules have included below: a) Business rule of proposed system Our proposed system includes the following operating principles or rules: BR1: For accessing governmental houses every customer must have an ID. BR2: To access private owned houses customers must have an ID. BR3: Unauthorized users cannot use the system BR4: Username and password is required to use the system b) Business rules of existing system The business rules of the existing system  BR 2: owner should pay tax on specified time.  BR3: Both owners and customer should submit legal agreement and take full accountabilities.  BR4: Every house that wants to get service from the system must be registered.  BR5: Every customer must be paid to register from the system in order to get service.  BR6: Agreement should be register to the system.  BR7: customer and owner meet to submit agreement. 2.2.3 Constraints of the system System constraints are elements, factors or sub system that works as a narrow part of a road, when congestion occurs. It put a limit on an entity, project or system from achieving its qualities that may be developed with reference to its goals. The constraints may include the following:-  Lack of adequate information:-There were problems while with difficult requirements because the employees are not voluntary to give enough information about the rental system.  Lack of time: - The time given to complete this project is very short the reason is a lot of other courses assignment and exam are loaded.  Lack of comfortable place:-There was no comfortable place to do our project proposal as well.  Budget:-which means for writing we did not have enough money. 2.3 New System House rental system is designed to provide fast and easy way of controlling all the activities of house renting. It is also used to communicate with customer’s using the web, keep the data for the longest time with in the database.
  • 23. 13 Our proposed system provides an easy way for customer’s to check available house’s for renting. And also the system allows to manage all house related files. This includes posting, deleting and updating houses .The system also provides an easy way for admin and private owner to see customer’s request on the web and sending their response to the customer. Generally, house rental system is concerned on managing house’s, providing easy and understandable way of controlling the activities of house renting, and making easy and fast communication held between customer, admin, employees and private owner. The major solutions to address the problems of the existing system are as follows. Better utilization of resources, performance, security, reliability, accuracy and in general better service and the new system is aimed to perform basic and crucial tasks of the organization. It contains a well-organized database server which makes data to retrieve, update easily. Since the computer is capable of performing and processing many and huge tasks too faster, efficient and more correct it is preferred to apply it on the system. 2.3.1 Requirement Analysis of the New System The purpose of requirement is used to prepare requirement specification before starting the actual design. This enables the designer to have a clear idea about the structure and content of the information system. 2.3.2 Functional requirement Functional requirements consist of a specification of a function that the system must support. In this section we discuss what is our web based system is expect to do. The type of user in this system is customer (user), employee, Private owner and administrator. Administrator: REQ-1: The system shall allow Administrator to login before accessing system. REQ-2: The system shall allow Administrator to manage user account. REQ-3: The system shall allow the administrator to delete house. REQ-4: The system shall allow the administrator to update house. REQ-5: The system shall allow the administrator to view customer feedback REQ-6: The system shall allow the administrator to view customer request. REQ-7: The system shall allow the administrator to Generate report. REQ-8: The system shall allow the administrator to Generate news. REQ-9: The system shall allow the administrator to send response for customer. Private owner: REQ-10: the system shall allow Private owner to login before accessing system.
  • 24. 14 REQ-11: The system shall allow the private owner to post their house. REQ-12: The system shall allow the private owner to register their house. REQ-13: the system shall allow the private owner to delete their house. REQ-14: The system shall allow the private owner to update their house. REQ-15: The system shall allow the private owner to view customer feedback Customer: REQ-16: The system shall allow Customer to login before accessing system. REQ-17: The system shall allow Customer to send request. REQ-18: The system shall allow Customer to give feedback. REQ-19: The system shall allow Customer to view houses. REQ-20: The system shall allow Customer to view response for their request. REQ-21: The system shall allow Customer to view report generated by admin. REQ-22: The system shall allow Customer to reserve house. REQ-24: The system shall allow Customer to view news. REQ-25: The system shall allow Customer to send withdrawal request. Employee: REQ-26: The system shall allow Employee to login before accessing system. REQ-27: The system shall allow Employee to View customer feedback. REQ-28: The system shall allow Employee to upload houses. REQ-29: The system shall allow Employee to view customer request. REQ-30: The system shall allow employee to reserve house for customer. REQ-31: The system shall allow Employee to view report and news 2.3.3 Nonfunctional requirement Non-functional requirements are requirement, which are not very basic or essential for the system, but it can support and give more quality for the system. The non-functional requirement of the system deals with how well the system provides service to the user. They are also called technical requirements. It concerns to the technical aspects that your system must fulfill, such as performance-related issues, reliability issues, and availability issues. The new system had the following Non-functional requirements.  User friendly interface:-since the system has attractive interface therefore users are interested to use it.
  • 25. 15  Error handling: - when the user makes some mistakes the system responds that error has occurred using easily understandable messages and allows the user to recover from the error.  Availability:-the system is available at any time with internet connection.  Security issue-the system is secured, users can't access the system without authentication.  User satisfaction:-we will satisfy all requirement of the user as much as possible by using prioritization and negotiation.  Efficiency: - The system responds to user requests as fast as possible and fully operational every day for 24 hours.  Time minimization the time taken to find a house to rent will be reduced.  Cost minimization since searching is online expenses are reduced.  Reliability: The system should handle invalid inputs and displays error message to users. Reliability is one feature of the system significantly validates user inputs  Portability: This system is portable, since it runs on different platforms. Running on different platforms makes the system accessible by users.  Performance: there is no ambiguous data fetched on the system and no wastage of time to organize and integrate file. 2.4 Use Case Model A use-case model is a model of how different types of users interact with the system to solve a problem. As such, it describes the goals of the users, the interactions between the users and the system, and the required behavior of the system in satisfying these goals.  It represents interaction between a user (human or machine) and the system.  It describes the proposed functionality of the new system. It is a single unit of meaning full work. Each Use Case has a description which describes the functionality that will be built in the proposed system.  It has two types of use cases:  Essential use case  System use case A use case diagram contains four components.  Boundary:-which defines the system of interest in relation to the world around it.  Actors: -usually individuals involved with the system defined according to their roles.  Use cases: - the specific roles are played by the actors within and around the system.  The relationships:-between the actors and the use cases
  • 26. 16 Construct Description Symbol Use case ✓ A sequence of action including the function that system can perform to interact with actor of the system Actor ✓ A coherent set of roles that users of the use case play when interacting with these use case(system) Actor Name System boundary ✓ Represents boundary between physical system and the actor who interact with Boundary name Association ✓ The participation of actors in use case that is instance of actor and instance of use case communicate with each other. Association Name Extended ✓ The relationship from an extension use case to base use case specify how the behavior for extension use case can be inserted into behavioral defined for the base use case. ✓ An extend relationship between two use case indicates alternative behavior <<extend>>Use or include Use or Include ✓ A relationship from use case to an inclusion use case specifying how the <<include>>
  • 27. 17 behaviors use case for the inclusion uses case inserted to the behavior for the base use case. ✓ An include relationship between use cases indicates where one use case always includes the behavior of another. Generalization ✓ Taxonomic relationship between more general use case and more specific use case Table 4 : Use Case Component (scenario)
  • 28. 18 2.4.1 EssentialUse case Diagram Use Case represents interaction between a user (human or machine) and the system. Use case components (Scenario): Figure 1 Essential use case diagram 2.4.2 System Use Case Diagram Use case diagram Shows use cases, actors, and their inter-relationships. A use case diagram is a graphic depiction of the interactions among the elements of a system. A use case is a methodology used in system analysis to identify, clarify and organize system requirements. Use Case Model describes the proposed functionality of a new system. A Use Case represents a discrete unit of interaction between a user and the system
  • 29. 19 Actors: An actor represents a type of users of the system that the system interacts with. An actor is a user of the system playing a particular role. Use cases: A use case describes the sequence of events of some types of users, called Actors, using some part of the system functionality to complete a process. Actor Identification An actor initiates a use case and receives something of value from the use case. Actors are always external to the system being modeled i.e. they are not parts of the system. We identified the following actors.  Administrator:  Customer  Owner:  employee: Figure 2 Use case diagram
  • 30. 20 2.4.3 System use case description Table 5 Login use case description Use case name Login Actors Customer, Private Owner, admin, Employee Description The Customer, Private Owner, admin and Employee uses this form to log into the system. Pre-condition The Customer, Private Owner, Employee and admin should be register first or need to have an account to login. Basic flow of event 1. The customer, Private Owner, Employee and admin enter to the home page 2. system displays login form 3. Enter user name and password and click login button 4. The system checks for the validity of the user name and password 5. The system displays the customer, Private Owner, Employee or admin page 6. Use case Exit Alternate course of action 1 If the entered user name and password is not valid it displays “please enter valid user name and password” go to basic flow 2. 2 If the user forgot the user name and password display reset user name and password page. Post condition The users (Customer, admin, Private Owner and Employee) logged in to the main page. Use case Send request Actor Customer Description This use case permits to register rental information of the customers and the house that the customers rent.
  • 31. 21 Table 6 Send request use case description Pre-condition Login Flow of event 1: This use case is initiated when the actor’s clicks on send request option. 2: System displays the page that contains information to be registered 3: Actors fill all the information 4:customerclicks or press on the Save or insert button. 5: The system verifies that the fields have been filled out correctly. 6: System displays send successfully. 7: Use case Exit . Alternate course of action 4.1 If the customers fields are not filled out correctly system goes back or returns to step 4 of basic course of Action to fill valid data. Post-condition Customer’s information is registered. Use case Register House Actor Private Owner and Employee Description This use case permits to register rental information of the Private Owner and Employee and the house that they register Pre-condition Login
  • 32. 22 Table 7 Registerhouse use case description Table 8 Delete house information use case description Flow of event 1: This use case is initiated when the actors clicks on register houses option. 2: System displays the page that contains information to will be registered. 3: Private Owner and Employee fill all the information 4: Private Owner and Employee click or press on the save or Register button. 5: The system verifies that fields have been filled out correctly. 6: The system displays inserted successfully message. 7: Use case Exit Alternate course of action If landlords fields are not filled out correctly system goes back or returns to step 3 of basic course of Action. To fill valid field. Post- condition Private Owner and Employee information is registered. Use case Delete house information Actor Admin, Private Owner Description Only admin can Delete Governmental house information and Private Owner deletes their own house Pre-condition Admin and Private Owner need to have an account to manage Flow of event 1: This use case is initiated when admin and Private Owner click on manage delete house option. 2: System displays the page that contains delete buttons. 3: Admin Private Owner deletes resources. 4: System displays deleted successfully if admin and Private Owner delete house information. 5. Use case Exit Post-condition Admin and Private Owner want to manage resources
  • 33. 23 ` Table 9 View customer request use case description Use case View customer request Actor Admin, Employee Description When Admin and Employee choose view customer request option, the system displays information. Pre-condition Admin and Employee need to have an account if they want to see more requests. Flow of event 1: This use case is initiated when the Admin and Employee clicks the view customer request option. 2: The system displays available name of customer and some descriptions. 3: Admin and Employee click the view request option. 4: System displays all the available requests, recorded in the database. 7: Use case Exit Post condition Admin and Employee want to know if there is customer’s request. Alternative flow of event Admin and Employee only see the name and the description of customers Use case View house Actor Customer, Private Owner And Employee Description When actors choose view house option, the system displays all available resources. Pre-condition User need to have an account if they want to see more house information.
  • 34. 24 Table 10 View house use case description Table 11 Send response use case description Flow of event 1: This use case is initiated when the actors clicks on view resources option. 2: System displays available name of the Private Owner, employee and some descriptions. 3: customer click on house option 4: System displays all the available resources recorded in the database. 7: Use case Exit Post-condition Customer wants to know if house information is reserved or not. Alternative flow of event Actors see only name of the Private Owner and Employee description if they don’t want to login. Use case Send response Actor Admin, employee Description When Admin, employee choose view Customer request option, the system displays information about who is requested Pre-condition Admin or employee is already logged in Flow of events 1. The Admin, employee click view request button. 2. System display text area box and request button. 3. Employee fills necessary notification and click request button to send it. 4. The system will display send successfully message. 5. Use case Exit Post condition Response is send to the Customer
  • 35. 25 Table 12 Update house use case description Use case Update house Actor Admin, Private Owner Description Only Private Owner can update Their own house information and Admin can update Governmental house Information Pre-condition Admin, Private Owner need to have an account to modify the property Flow of event 1: This use case is initiated when Admin, Private Owner click on house information option. 2: System displays the page that contains update buttons. 3: Admin, Private Owner updates resources. 4: System displays update successfully. 5. Use case Exit Post-condition Admin, Private Owner want to modify house information Use case name Send Feedback Actors Customer Description: To enable the users to send the feedback, to comment any Suggestion on text area. Precondition: The customer must be having a suggestion about the system as well as houses property. Flow of event 1. The customer click feedback button. 2. System display text area box. 3. The customer writes some necessary information and click post button. 4. The system can validate if writes on text area or not.
  • 36. 26 Table 13 Send feedback use case description Use case name Logout Participating actors: System administrator, customer, Employee and Private Owner Pre- Condition: System administrator, customer, Employee and Private Owner should be logged in Description: To Exit from services. Flow of action: System administrator, customer, Employee and Private Owner clicks on logout button. Table 14 Logout use case description 2.4.4 Key abstraction with CRC analysis A Class Responsibility Collaborator (CRC) model is a collection of standard index Cards that have been divided into three sections; this is class name, responsibility and collaborator. A class represents a collection of similar objects, a responsibility is something that a class knows or does, and a collaborator is another class that a class interacts with to fulfill its responsibilities. Those can be shown in the following table. 5.the system can make save on database and post on home page 6. Use case Exit Post condition Suggestion will be posted
  • 37. 27 Table 15 Structure of CRC card Name The name, located at the top of the card, describes the class that the CRC card represents. Responsibility A responsibility is something that a class knows or does, represented along the left side of the card. Collaborators Responsibilities will collaborate with one or more other classes to fulfill one or more Scenarios. Collaborators are listed on the right hand side of the CRC card, next to the responsibilities that they are helping to realize. Class name Responsibility Collaborator Admin( actor) Manage account() Manage house() Generate report() Send response() View feedback() View report () View news() Admin Customer( actor) Reserve house() View house() Send leave request() Send feedback() Send request() View report () View news() Customer
  • 38. 28 2.4.3 Sequence diagram UML sequence diagrams are used to show how objects interact in a given situation. A sequence diagram is a form of interaction diagram which shows objects as lifelines running down the page, with their interactions over time represented as messages drawn as arrows from the source lifeline to the target lifeline. Generally, a sequence diagram shows object interactions arranged in time sequence. Employee ( actor) Manage house() Manage request() view feedback() Send response() View report () View news() Employee Private Owner ( actor) Manage house() view feedback() Private Owner
  • 39. 29 Figure 3 Create account sequence diagram
  • 40. 30 Figure 4 Log in sequence diagram
  • 41. 31 Figure 5 Send request sequence diagram
  • 42. 32 Figure 6 Registerhouse sequence diagram
  • 43. 33 Figure 7 Send feedback sequence diagram
  • 44. 34 Figure 8 Send response sequence diagram
  • 45. 35 2.3.4 Activity Diagram Activity diagrams provide a way to model the workflow of a business process. Different tools such as decisions, start states, end states, are used on the activity diagram. Activity diagram is basically a flow chart to represent the flow form one activity to another activity. The activity can be described as an operation of the system. Figure 9 Login activity diagram Figure 10 Register user activity diagram
  • 46. 36 Figure 11 Reserve house activity diagram Figure 12 Generate report activity diagram
  • 47. 37 Figure 13 Delete house activity diagram Figure 14 Send response activity diagram
  • 48. 38 Figure 15 Post house activity diagram 2.3.5 Conceptual modeling: Class diagram UML class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association) and the operations and attributes of the classes. Class diagrams are used for a wide variety of purposes, including both conceptual/domain modeling and detailed design modeling. A class model is comprised of one or more class diagrams and the supporting specifications that describe model elements including classes, relationships between classes, and interfaces. UML class diagrams show the classes of the system, their inter-relationships, and the operations and attributes of the classes.
  • 50. 40 2.5 User Interface Prototyping User interface (UI) prototyping is an iterative development technique in which users are actively involved in the mocking-up of the UI for a system. . Figure 17 User Interface prototyping 2.6 Identifying change cases The change happens in any systems. Any successful software needs to change and allows over its life cycle. That is changes are motivated by new and/or modified requirements. The change case as follows: User interface work on browser that support html codes and php code. The systems will work sun Solaris server. The system will be written by JavaScript and php language. The systems will use data contained existing mysql data base.
  • 51. 41 CHAPTER THREE: SYSTEM DESIGN 3 Introduction In the previous chapter we have discuss the functional and non-functional requirements of the system and produced the analysis model. In this chapter we are going to describe the current and proposed system of architectural design. In addition to this we describe the access control and security of our system. The overall system design objective is to give an efficient, modular design that will reduce the system complexity, facilitate change and leads to an easy implementation. 3.1 Design goal Design goals describe the important system qualities. Design goals also define the values against which options are evaluated. When designing a new system, a system designer creates a model of the system from requirements made. The quality of the model highly determines the quality of the product and future maintainability. Design goals:-  Response time: taking less time for system to respond to the request.  Simplicity: we develop the new system can make user friendly graphical user interface.  Reliability: the system must perform its intended functions and operations in a system's environment. Without experiencing failure or system crash.  Security: the system must be protected from an authorized access, threats, attacks and vulnerabilities.  Fault tolerance: the system must have the ability to satisfy requirements despite failures such as hardware, software or network failures. 3.2 Class modeling diagram UML class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association) and the operations and attributes of the classes. Class diagrams are used for a wide variety of purposes, including both conceptual/domain modeling and detailed design modeling. A class model is comprised of one or more class diagrams and the supporting specifications that describe model elements including classes, relationships between classes, and interfaces. UML class diagram show the classes of the system, their inter- relationships, and the operations and attributes of the classes.
  • 52. 42 Figure 18 Class Diagram 3.3 Current software architecture Since it is manual system there is no current software architecture for house rental system. 3.4 Proposed software architecture The architecture used for the proposed system is a 3 tier Client/Server Architecture. The client tier is the applications user interface containing data entry forms and client side applications. It displays data to the user. Users interact directly with the application through user interface. The client tier interacts with the web/application server to make requests and to retrieve data from the database. It then displays to the user the data retrieved from the server. A client can use Internet browsers to access information from the server. The middle tier (web/application server) implements the business logic, controller logic and presentation logic to control the interaction between the application’s clients and data. The controller logic processes client requests such as requests to view customer’s request, to record Employee approve request(); view request(); upload house(); Adminstrator manage account(); manage house(); approve request(); Landlord uplaod house(); manage house(); view house(); Customer send request(); view house(); reserve house(); view location(); send feedback(); house housenumber:int kebele:char price:double User Account +account type:char -password:varchar -username:char -phonenumber:int +firstname:varchar +lastname:varchar manages 1 1 has 1 manages 1 has 1 has 1 manages 1 upload 1 reserve 1 1 * * * 1 1 approve * * 1
  • 53. 43 or to retrieve data from the database. Business rules enforced by the business logic dictate how clients can and cannot access application data and how applications process data. A web server is a program that runs on a network server (computer) to respond to HTTP requests. The most commonly used web servers is Apache. The web server used in this system is Apache. HTTP is used to transfer data across an Intranet or the Internet. It is the standard protocol for moving data across the internet. The third tier, called the data tier, maintains the applications data such as house’s data customer data etc. It stores these data in a relational database management system (RDBMS). Figure 19 System architecture model for proposed system 3.4.1 Subsystem Decomposition System decomposition is undertaken to reduce the complexity of the system and gaining insight into the identity of the constituent components. The system is decomposed in to sub-systems which are a collection of classes, associations, operations, events and constraints that are closely interrelated with each other. Client Web server/Application server Internet HTTP MYSQL Database server
  • 54. 44 The proposed web based house rent system is decomposed in to smaller sub-system as shown in the following figure. These sub-systems are further decomposed in to other sub-systems. The major sub-system identified includes:- Registration management: -this sub-system concern with customer to register their Personal details and allow private owner and employee to register house information as well as allow admin to register employee. Account Management:-this subsystem allow customer and employee to create user account before accessing the system as well as allow private owner and admin to delete user account Feedback Management: - in this sub system the customers can raise their comments as well as suggestions about the resource and system as well as allow private owner and administrator to view and delete customer feedback. Request management: - in this sub system the customers can send their request about the house want to rent as well as allow private owner and administrator to view and delete customer request. House Management: - in this sub system the customers can view houses to be rented as well as allow private owner and administrator to delete and update house information. Location Management: - in this sub system the customers can view location of houses; Administrator and private owner can set location of houses Report Management: - in this sub system the customer and employee can view report Generated by admin and allow admin to generate report about rented as well as unrented Houses. Response Management: - in this sub system the customer can view response generated by admin and private owner and allow admin and private owner to send response to customer.
  • 55. 45 Figure 20 Subsystem Decomposition 3.4.2 Component Diagram Component diagram is a special kind of diagram in UML. A component in the Unified Modeling Language "represents a modular part of a system, that encapsulates its content and whose manifestation is replaceable within its environment. It does not describe the functionality of the system but it describes the components used to make those functionalities. So from that point component diagrams are used to visualize the physical components in a system. These components are libraries, packages, files etc. Component diagrams can also be described as a static implementation view of a system. Static implementation represents the organization of the components at a particular moment. A single component diagram cannot represent the entire system but a collection of diagrams are used to represent the whole. So the team is used this diagram. Registration Management register customer() register house() Report Management send report() view report() delete report() update report() House Management view house () update house() register house () delete house () Account Management create account() delete accoount() update account() Request Management send request() view request() Response Management view response () Feedback Management send feedback() delete feedback() update feedback() Web based house Rental System for Mettu City
  • 57. 47 3.4.3 Deployment Diagram This section describes the HW/SW mapping of the proposed system. To describe this we have use the UML deployment diagram. Figure 22 Deployment diagram 3.4.4 Persistence modeling for object oriented database Persistent data management is basically used to represent the design of the database. Database design is the process of producing a detailed data model of a database. Web based house rent system will have database tables to store, access and maintain information that flows in the system.
  • 58. 48 Figure 23 Persistence diagram 3.4.5 Access control and security In the systems, different actors have access to different functionality and data. Therefore these privileges prevent unauthorized users from accessing data’s which they don’t have granted to access. Authentication: This take place by letting users to insert their user name and password in the displayed login form. Authorization: This takes place by preventing users from participating in specific tasks on which he/she doesn’t have grant to access. Function Actor Customer Private owner Administrator Employee Generate Report  View Report    
  • 59. 49 View Customer request   View location   Register house information   View house     Send withdrawal request  Delete house information  Send response   Update house information   Register customer  Reserve House  Manage account     upload private owner house  View notification    Table 16 Access control and security 3.5 Boundary conditions and exception handling 3.5.1 Boundary Conditions Under this section we decide how the system is:-  Started,  Initialized, and  Shut down. We need to define how we deal with major failures. The system starts and shuts down going through standard process. To start services first the server must start which is application and database server. Then browser start on the client side and it establishes connection with the server through the address of the Wamp. Then the server provides the requested service to the
  • 60. 50 clients. After the initialization process is completed, the user of the system will be presented with a login screen. The system is prepared with error handling facility as well. Invalid data entered by the user will not be accepted by the system. When user-data-entry error happens, the system will display appropriate error message and re-prompts to enter the correct data. Upon power failure, only the current transaction will be lost. The System is Client–Server architecture and allows a remote access. The following requirements are mandatory on both Client and Server side. For example: Client slide  Internet connection should be available on the client side  Web browser is demanding to connect with the web server of the system  The customer should be legitimate and having an account provided by the system  It should give the URL (Uniform Resource Locator) address of the web site.  The customer communicates the different hyperlinks/pages using the homepage.  The Customer can get different service from viewing the available information from the system. Server Side  The system administrator/Web Master initiates and updates the system using his/her preferred privileges  The server side should be registered on the local or any other service provider.  It should have Internet connection and database driven-website for remote access.  It automatically save the changes and take backups. 3.5.2 Exception Handling The system will display messages if it is tried to access using wrong/invalid account by checking against the account table.  The system provide alert when user insert invalid data.  There will be a recovery mechanism so as to save temporary states in the case of network link failure.  If the user enters incorrect input like inserting empty string, inserting an incorrect username in to the database or login with unregistered username and password the system should display an appropriate message for each error. The system should handle exceptions listed below.
  • 61. 51  Login error (unauthorized login):-the system shall handle an attempt to login with incorrect username and password and display appropriate message. 3.6 User Interface Design User interface is the front-end application view to which user interacts in order to use the system. The user interface is the main component that is used as a communication medium between the user and the system. We do have a user Interface as described below. Home Page: this page appears as the site in which the system is deployed is opened or accessed and contains some links which lead the user to other pages according to his/her privilege, and if the user is authorized user or has an account, he/she will directly go to the page that he want by entering correct username, password. Otherwise they will sign up to have an account and access the system. Figure 24 Home page
  • 62. 52 Create Account admin Page: this page appears as user has navigated to the admin page it has a form that a user fills to create an account. User must fill username, password, Id and type of an account `weather it is an administrator or gust account to create his or her own account. Figure 25 Create account admin page
  • 63. 53 CHAPTER FOUR: IMPLEMENTATION AND TESTING 4. Implementation Introduction In this chapter we mainly focuses on the implementation part, implementation concerned with the type of material (Hardware and software required), techniques to develop the system, algorithm for the system, code samples of the system, data preparation, how to install the system, some testing techniques, startup strategy for the new installed system are briefly described in this part of documentation. Sample code and their screen image 1. Login page of customer, employee, admin and private owner <?php session_start(); $con=mysqli_connect("localhost","root","","house"); if(!$con) { die("Error in connection".mysqli_connect_error()); } ?> <HTML> <html lang="en-US" xml:lang="en-US" xmlns=""/> <head> <title>House Rental </title> <script type="text/javascript" src="css1/javascriptdate.js"></script> <link rel="shortcut icon" href="favicon.ico" type="imagese/x-icon" /> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  • 64. 54 <meta name="Keywords" content="XML,tutorial,HTML,DHTML,CSS,XSL,XHTML,JavaScript,ASP,ADO,VBScript, DOM,W3C,authoring,programming,learning, beginner's guide,primer,lessons,school,howto,reference,free,examples,samples,source code,demos,tips,links,FAQ,tag list,forms,frames, color tables,Cascading Style Sheets,Active Server Pages,Dynamic HTML,Internet database development,Webbuilder,Sitebuilder,Webmaster, HTMLGuide,SiteExpert" /> <meta name="Description" content="HTML XHTML CSS JavaScript XML XSL ASP SQL ADO VBScript Tutorials References Examples" /> <script> function return check(){ var pass=document.getElementById("password"); if(pass.value==""){ alert("fill the blank"); return false; } else { return true; } } </script> <link rel="stylesheet" type="text/css" href="index's_file/globalcss.css" />
  • 65. 55 <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "../https@ssl.default.htm" : "../www./default.htm"); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-3855518-1"); pageTracker._initData(); pageTracker._trackPageview(); </script> <script> todayDate=new Date(); thisday=todayDate.getDay(); thismonth=todayDate.getMonth(); thisdate=todayDate.getDate(); thisyear=todayDate.getYear(); thisyear = thisyear % 100; thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear)); if (((thisyear % 4 == 0) && !(thisyear % 100 == 0)) ||(thisyear % 400 == 0)) monthdays[1]++; startspaces=thisdate;
  • 66. 56 while (startspaces > 7) startspaces-=7; startspaces = thisday - startspaces + 1; if (startspaces < 0) startspaces+=7; document.write("<table border=5 bgcolor=#egfofl width=215 height=210"); document.write("bordercolor=black><font color=black>"); document.write("<tr bgcolor=#b6c2cd><td colspan=8><center><strong>" + monthnames[thismonth] + " " + thisyear + "</strong></center></font></td></tr>"); linktrue=true; } } } if (count==thisdate) { document.write("<font color='FF0000'><strong>"); } if (count <= monthdays[thismonth]) { document.write(count); } else { document.write(" "); } if (count==thisdate) { document.write("</strong></font>");
  • 67. 57 } if (linktrue) document.write("</a>"); document.write("</td>"); count++; } document.write("</tr>"); document.write("<tr>"); startspaces=0; } document.write("</table></p>"); </script> </head> <body onLoad="timeimgs('1');"> </style> <center> <table width="950" height="100" border=0px id="table1"bgcolor=""#000000""> <tr> <td align="center"> <table width="950px" border="0" cellpadding="0" cellspacing="0" style="margin-bottom:-10px;margin-top:-4px;background-color:#787878;border-bottom:0px color="#606060 "> <tr border="0px">
  • 68. 58 <td width="529px" valign="middle" style="height:90px;text-align:left"> <img align="left" border="0" src="house photo/house 2.jpg" width="215" height="120" alt= HOUSE RENTAL" title="Mettu City House Rental System" /> &nbsp; <font color="#33ddaa"size="+2"><p align="left"valign="bottom"><img src="IMG/H01.png" height="50%" width="70%"/></p></font> </td> <table width="950px" border="0px"> <tr> <td width="950" height="29" background-color="606060" margin-top="-15"> <div id="topnav" > <li><a href="home.php">Home</a></li> <li><a href="housedatabase.php">viewhouse</a></li> <li><a href="accountrequestcus.php">ActivationRequest</a></li> <!--<li><a href="viewactivationresponse.php">Activation</a></li>--> <li><a href="login.php">login</a></li> </div> </td> </tr> </table> </table> <table style="margin-top:-12px" width="950px" border="0"color:#606060 cellpadding="0" cellspacing="0"background-color:#606060 " ><!--content table --> <tr >
  • 69. 59 <td class="left_container" height="100" width="100px" valign="top" style="background- color:#C0C0C0 " bgcolor="#C0C0C0 "> <br> <br><br><br><br><br> <p align="center"> <a href="aboutus.php">About Us</a><br></p> <p align="center"> <a href="contactus.php">Contact Address</a><br></p> <p align="center" > <a href="services.php">Services</a></p> </td> <td bgcolor=" #FFCCFF "valign="top"height="150px" width="325px" margin-top="0px" border="0px" align-top="0px"><!--center --> <div id="pagetitle" ><!-- InstanceBeginEditable name="pagetitle" --><b> Mettu city house rental System</b><!-- InstanceEndEditable --></div> </br> <div id="mainContent1"> <br> <div id="middletxtheadermain" align="left"><br/><center><img src="img/login.gif" width="140px" height="110px" valign="top" /></center> </div> <div id="middletxt"> <FORM name="register" enctype="multipart/form-data" ACTION="login.php" METHOD="post" onSubmit="return register_validation();"> <table border='1' style='width:325px;border:1px solid black;border-radius:10px;' align='center'> <td height="22" width="325px"><table width="325px" border=0> <tr>
  • 70. 60 <td width="20" height="37" ><div align="left" margin-left="2px"><strong><font color="#FF0000">*</font>usertype : </strong></div></td> <td align="left"> <select id='usertype' name="usertype" required style="width:175px;" "height:20px;" margin-left="2px" <option></option> <option>admin</option> <option>Employee</option> <option>customer</option> <option>landlord</option> </select> </td> </tr> <tr> <td width="80" height="37" ><div align="left"><strong><font color="#FF0000">*</font>User Name : </strong></div></td> <td width="80"><input type="tex" name="username" id="username" maxlength="22" style="border:1px #480000 solid;width:176px;height:25px;background:#FFFFFF;border-radius:5px;"placeholder="Enter User name" required /> <!--<div class="example">(Only Lower case Allowed.)</div>--></td> </tr> <tr>
  • 71. 61 <td width="80" height="37"><div align="left"><strong><font color="#FF0000">*</font>Password : </strong></div></td> <td width="80"><input type="password" name="password" id="password" maxlength="22" style="border:1px #480000 solid;width:176px;height:25px;background:#FFFFFF;border-radius:5px;" placeholder="Enter password" /></td> </tr> <tr> <center> <td colspan="3" align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" id="submitMain" name="submitMain" value="Login" title="Click here to login" Onclick="return check(this.form);" /> <input type="reset" value=" CLEAR " onClick='focusReset()' title="Click here to clear the text box"/> </tr></center> </td> </tr> <tr> <td>&nbsp;</nbsp;> <ul> <td colspan="2"class='para1_text'>
  • 72. 62 <li style="display: block;float:right;text-decoration:none;padding: 8px;"><a rel="facebox" href="forget.php"> *Forgot Password</a></li></ul></td> </tr> </table></td> </tr> </table> <br><br> </form> <?php if(isset($_POST['submitMain'])) { $account_type=$_POST['usertype']; $userid =$_POST['username']; $_SESSION['username']=$userid; $password=$_POST['password']; $query = "SELECT * FROM account WHERE usertype = '{$account_type}' AND username = '{$userid}' AND password = '{$password}' ;"; $result_set=mysqli_query($con,$query); if(!$result_set){ die("query is failed".mysqli_error());
  • 73. 63 } $row=mysqli_fetch_assoc($result_set); $stat=$row['status']; if(mysqli_num_rows($result_set)>0) { if($stat==1) { if($account_type=="admin") { $_SESSION['username']=$row['username']; echo "<script>window.location='admin.php';</script>"; } else if($account_type=="Employee") { $_SESSION['username']=$row['username']; echo "<script>window.location='employee.php';</script>"; } else if($account_type=="landlord") { $_SESSION['username']=$row['username']; echo "<script>window.location='landlord.php';</script>"; } else if($account_type=="customer")
  • 74. 64 { $_SESSION['username']=$row['username']; echo "<script>window.location='customer.php';</script>"; } //else //{ //$_SESSION['validuser']=$user; //echo "<script>window.location='#.php';</script>"; //} } else { print "<img src='IMG/error.png' align='center' width='35px' height='25px'><I><font face='arial' color='black' size='3'> Your Account is Deactivated! Send Activation Request. !!</font></I>"; } } else { echo '<div align="center"><strong><font color="#FF0000"> Account Type, User Name & Password not match !!</font></Strong></div>'; }
  • 75. 65 } mysqli_close($con); ?> <br/><br/><br/><br/><br/><br/><br/><br/><br/> <div align="right">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div> </div> <!-- end #mainContent --> </div> </div> </td><!--center end--> <td class="right_container" valign="top" width="100px" height="100px""> <table class="right" style="margin-top:0px;color:#FFFF00;background-color:#c0c0c0" width="100%" cellpadding="0" cellspacing="0" bgcolor="#c0c0c0"> <tr> <td class="right" height="100px" width="100px" border="1px" valign="top" align="center"bgcolor="#c0c0c0 "border="1px" > <br><br><br><br> <?php
  • 76. 66 echo"Today:"; echo(date('d-m-Y')); echo"<div id='clock'></div>"; ?> <h2>Calender</h2> <script lang="javascript"> monthnames= new Array("January","Februrary","March","April","May","June","July","August","September"," October","November","Decemeber"); var linkcount=0; function addlink(month, day, href) { var entry = new Array(3); entry[0] = month; entry[1] = day; entry[2] = href; this[linkcount++] = entry; } Array.prototype.addlink = addlink; linkdays = new Array(); monthdays = new Array(12); monthdays[0]=31; monthdays[1]=28; monthdays[2]=31;
  • 77. 67 monthdays[3]=30; monthdays[4]=31; monthdays[5]=30; monthdays[6]=31; monthdays[7]=31; monthdays[8]=30; monthdays[9]=31; monthdays[10]=30; monthdays[11]=31; todayDate=new Date(); thisday=todayDate.getDay(); thismonth=todayDate.getMonth(); thisdate=todayDate.getDate(); thisyear=todayDate.getYear(); thisyear = thisyear % 100; thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear)); if (((thisyear % 4 == 0) && !(thisyear % 100 == 0)) ||(thisyear % 400 == 0)) monthdays[1]++; startspaces=thisdate; while (startspaces > 7) startspaces-=7; startspaces = thisday - startspaces + 1; if (startspaces < 0) startspaces+=7;
  • 78. 68 document.write("<table border=0 bgcolor=#egfofl width=20 height=20"); document.write("bordercolor=black><font color=black>"); document.write("<tr bgcolor=#b6c2cd><td colspan=8><center><strong>" + monthnames[thismonth] + " " + thisyear + "</strong></center></font></td></tr>"); document.write("<tr>"); document.write("<td align=center>Su</td>"); document.write("<td align=center>Mo</td>"); document.write("<td align=center>Tu</td>"); document.write("<td align=center>We</td>"); document.write("<td align=center>Th</td>"); document.write("<td align=center>Fr</td>"); document.write("<td align=center>Sa</td>"); document.write("</tr>"); document.write("<tr>"); for (s=0;s<startspaces;s++) { document.write("<td> </td>"); } count=1; while (count <= monthdays[thismonth]) { for (b = startspaces;b<7;b++) { linktrue=false; document.write("<td>");
  • 79. 69 for (c=0;c<linkdays.length;c++) { if (linkdays[c] != null) { if ((linkdays[c][0]==thismonth + 1) && (linkdays[c][1]==count)) { document.write("<a href="" + linkdays[c][2] + "">"); linktrue=true; } } } if (count==thisdate) { document.write("<font color='FF0000'><strong>"); } if (count <= monthdays[thismonth]) { document.write(count); } else { document.write(" "); } if (count==thisdate) { document.write("</strong></font>"); } if (linktrue) document.write("</a>"); document.write("</td>");
  • 80. 70 count++; } document.write("</tr>"); document.write("<tr>"); startspaces=0; } document.write("</table></p>"); </script> <br/><br/><br/><br/><br/><br/><br/><br><br/><br/> </td> </tr> </table> </td> </tr></table><!--content table end--> <table width="953px" height="42px" border="1" background-color="#282828"> <tr width="953"style="margin-bottom:1px;margin-top:1px;background-color:#606060 ;border:0px solid #ffffff" border="0px" cellpadding="10" cellspacing="0"> <td valign="top" align="center"> <marquee value="right"><font color="#fef943" face="arial">&copy; 2021 @ Mettu City House Rental System.</font></marquee></td></tr></table> </td></tr></table> </center> </body>
  • 81. 71 </html> 2. Customer request to rent house <?php include("validation.php");?> <HTML> <html lang="en-US" xml:lang="en-US" xmlns=""/> <head> <title>House Rental </title> <script type="text/javascript" src="css1/javascriptdate.js"></script> <link rel="shortcut icon" href="favicon.ico" type="imagese/x-icon" /> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> <meta name="Keywords" content="XML,tutorial,HTML,DHTML,CSS,XSL,XHTML,JavaScript,ASP,ADO,VBScript, DOM,W3C,authoring,programming,learning,beginner's guide,primer,lessons,school,howto,reference,free,examples,samples,source code,demos,tips,links,FAQ,tag list,forms,frames,color tables,Cascading Style Sheets,Active Server Pages,Dynamic HTML,Internet database development,Webbuilder,Sitebuilder,Webmaster,HTMLGuide,SiteExpert" /> <meta name="Description" content="HTML XHTML CSS JavaScript XML XSL ASP SQL ADO VBScript Tutorials References Examples" /> <link rel="stylesheet" type="text/css" href="index's_file/globalcss.css" /> <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "../https@ssl.default.htm" : "../www./default.htm"); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-3855518-1"); pageTracker._initData(); pageTracker._trackPageview(); </script> </head>
  • 82. 72 <body onLoad="timeimgs('1');"> </style> <center> <table width="950" height="100" border=0px id="table1"bgcolor=""#000000""> <tr> <td align="center"> <table width="950px" border="0" cellpadding="0" cellspacing="0" style="margin-bottom:-10px;margin-top:-4px;background-color:#787878;border-bottom:0px color="#606060 "> <tr border="0px"> <td width="529px" valign="middle" style="height:90px;text-align:left"> <img align="left" border="0" src="house photo/hOUSE 2.jpg" width="215" height="120" alt= HOUSE RENTAL" title="Mettu City House Rental System" /> &nbsp; <font color="#33ddaa"size="+2"><p align="left"valign="bottom"><img src="IMG/H01.png" height="50%" width="70%"/></p></font> </td> <table width="950px" border="0px"> <tr> <td width="950" height="29" background-color="606060" margin-top="-15"> <div id="topnav" > <li><a href="home.php">Home</a></li> <li><a href="housedatabase.php">viewhouse</a></li> <li><a href="accountrequestcus.php">ActivationRequest</a></li> <li><a href="viewactivationresponse.php">Activation</a></li> <li><a href="login.php">Login</a></li> </div> </td> </tr> </table> </table>