“Real Estate” Students: Khawla jayousi 11523616 Supervisor: Dr. Hussam A. Halim This document done and submitted for graduation project in Computer Science department. An-Najah National University 2018 /2019 Table of Contents Chapter 1:( Introduction) Introduction Project Scope Problem Specification Goals and Objectives 1.4 Requirements: 1.4.1 User Requirements (briefly) 1.4.2 System Requirements: Chapter 2: (literature and Methodology) Introduction Proposed System 2.4 Methodology Chapter 3: (System Requirements) System Analysis Requirements Collection Requirements Functional Requirements Non-Functional Requirements: System Design Use Case Diagram Class Diagram Sequence Diagram Database Diagram System architecture Data Flow Diagram Chapter 4: (System Implementation) Programming Language Tools What are we used Implementation Introduction Chapter 5: (The Conclusion) Conclusion Future work Abstract The process of buying and selling real estate is one of the most wasted time and sometimes money. As humans and real estate grew, the process became more difficult for the broker and client. It is difficult for a broker to keep all the property details and will take a lot of time for him. As well as the customer wastes a lot of time to find a suitable house for his requirements. This program came to help the broker and the customer to display the information in one site and search less than the accuracy of the property suitable for the person. The Real Estate Web Application is an interactive, effective and revenue-generating website designed for the Real Estate Industry. The main objective of this application is to help the Real Estate Company to display an unlimited number of property listings on the website. and make it easy for the customer to sell and buy a property. Chapter One (Introduction) 1. Introduction These days all the worlds trends towards to modern technology that is growing evolution every day and including several topics, a real estate market analysis is the process of analyzing a certain real estate market based on historical and current data in order to identify the best potential investment properties to purchase in the market. It is often referred to it as a comparative real estate market analysis because it relies heavily on comparing investment properties with one another or comparing your investment property to other competing properties in the market. The real estate office consists mainly of a real estate agent directly responsible for the property and acts as an intermediary between the seller (the owner) and the buyer. The buying and selling process is done only in the presence of these parties because each person has a role in this process depends on the other person. The seller will communicate with the broker to sell his property for the appropriate amount, and the broker depends on the buyer to sell the property for a profit, and in the end the buyer needs to contact the broker to search for a property suitable for his needs and the broker offers some properties that fit the specifications of the buyer. 1.1 Project Scope The real estate system includes two main types of users (the owner of the real estate office and customers), and the site helps them to communicate easily and facilitate the sale and purchase process between the property owner and the buyer so that the program displays all the properties available for sale and the buyer views a property that suits his requirements, then the office owner communicates with both parties to complete the process. 1.2 Problem Specification Real estate will satisfy the seller and buyer their needs. So that each seller must give correct information about his property, the requirements for proving ownership of the property owner, area, the location of the property and the amount of the sale. As for the buyer, searches for a suitable property for him and communicates with the real estate office to inquire about the property. It facilitates real estate viewing and buying methods. 1.3 Goals and Objectives 1) Design a browsing system with various multimedia features. 2) Integrate concurrent access features in the system. 3) Make the real estate process easier for broker, seller, and buyer as well as technology tools. 4) Enhances computer and internet skills. 5) Create an online environment that is easier for a broker since the broker display all property and people view it in a different city. 6) The only broker can access the system and update it. 7) The only broker can add a new property and see all the information. 8) viewer can view all property and some details (location, area, services, and photos). 9) Customers can communicate with the broker either on WhatsApp, Facebook messenger, email, phone or go to his office their queries about some property. 10) The seller sends the data related to the property he wants to sell to be added by the owner of the office to the real estate app. 1.4 Requirements: 1.4.1 User Requirements (briefly) The broker is the only person who can log in to the program. As for the users, there is no need for that. They can browse without the need to log in. As a broker: 1- The ability to add new real estate to the system and update them. 2- The ability to control the visibility of real estate 3- The ability to adding a customer. 4- The ability to edit profile (personal information). 5- The ability to Receive messages from a customer. 6- The ability to determine if the sale was completed or not. 7- The ability to send a message to each customer. 8- The ability to search for real estate. As customer: 1- The ability to see all visible real estate. 2- The ability to view details about real estate. 3- The ability to see different photos for some property. 4- The ability to search for real estate. 5- The ability to information about the real estate office. 6- The ability to know information about the owner of real estate office. 7- The ability to send a message to a broker, and inquire about anything regarding the real estate. 1.4.2 System Requirements: · React framework code. · JavaScript and HTML languages. · CSS. · Leaflet map. · Express js. · SQLite Studio database relational tables. End of chapter 1 Chapter Two (Literature and Methodology) This chapter will introduce the advantages and disadvantages of the proposed system. Finally, the development methodology which is ‘agile methodology ‘for the proposed routing system will be shown. 1. Introduction With our increasing trend towards e-shopping and facilitating online surveys, the real estate office owner uses the Internet to view properties and to communicate with their customers. With many tools, brokers complete their work and connect requirements efficiently and effortlessly. Although many tools are available online, needs are constantly changing and increasing day by day, so the process of finding the tool that supports all requirements has become important. 2.1 Proposed System The proposed system serves two types of user’s broker and customer. Each one has own web page interface on the website, just the broker needs to log in the system and if there are any new broker, it supports recording and creating new account property. The first web page will be the interface for a user that has the main page, list of real estate type, the owner of real estate office, message with a broker, search at last log in. when the broker logs in the system the new items will arrive. the page will contain the main page, list of customers, archive, list of real estate type, office, message, search at last log out. · Advantages of the proposed system: 1. Contains massages for discussions between broker and customer. 2. appears on the main page all real estate. 3. Users no need to log in the website. 4. search for suitable real estate. 5. Flexible and easy to deal with it by several users · Disadvantages of the proposed system: 1. The proposed system support one broker. 2. The proposed system does not support multiple brokers. 3. The proposed system does not support login users. 2.2 Methodology After studying this system deeply, the methodology that we follow in this system is ‘Agile methodology. That refers to many reasons: 1- 1.Requirements are unclear. 2- 2.The possibility of modification and change in the requirements and Agile methodology deals with the unstable and changing environment (changing in requirements, needs, priorities, technology ...etc.) by keeping the development team in contact with the users. 3- 3.We want to develop a system that verifies user satisfaction and fulfills their requirements. 4- 4.The agile methodology builds a collaborative team environment since they work together to find better ways of solutions. End of Chapter 2 Chapter Three (Requirements) 3.1 System Analysis We will review how to collect the requirements and methods used, and information we have will be classified depending on the actors of the system there are more than one actor. 3.1.1 Requirements Collection 1. Using other similar systems: It is one of the sources used to collect requirements. We review the real estate system that closes to my App Real Estate system and take the requirements of the system and benefit from the way it displays the content and try to make it easier, and understand how it works, and take the requirements for us. 2.From our instructor's suggestions: He played an important role in directing us to the facilities and additions needed our site to match with these days depending on his experience and vision. 3.2 Requirements The following section presents the functional and nonfunctional requirements Identified for the Real Estate system. Functional requirements are listed first, according to their relationship to the overall system, owner of real estate office and customer. The non-functional requirements that pertain to (Efficiency, usability, Reliability, Maintainability, Security, Portability). The functional requirements have been specified using a natural language description. 3.2.1 Functional Requirements According to, owner of real estate office and customer requirements identified in the system. 3.2.1.1 Clients Table below presents the identified functional customer’s requirements that directly relate to the students of the system. Requirement Description R1 Clients can browse the page without entering any operation. R2 Clients can know about the real estate office owner. R3 Clients can view all properties shown to them. R4 Clients can view some details of the property. R5 Clients can search for a specific type of property. R6 Clients can search for a specific type of property. R7 Clients can view the location of the property on a leaflet map. Table 2 Functional Requirement 3.2.1.2 Broker Table below presents the identified functional instructor requirements that directly relate to the broker of the system. Requirement Description R1 A broker can log in to the system. R2 A broker can log out the system. R3 A broker can update his office profile. R4 A broker can add new real estate. R5 A broker can control the visibility of real estate. R6 A broker can view all details about the property R7 A broker can control the visibility details about the property to the customer. R8 A broker can determine if the sale was complete or not R9 A broker can view the location of the property on a leaflet map. R10 A broker can search for any property. R11 A broker can add the customer and his information as (name, phone number, location, email, and name of the property. R12 A broker can add and make a relation with the customer and her property. R13 A broker can update and details of any property. R14 A broker can communicate with any customer by his email or his number. Table 3 Functional Requirements 3.2.2 Non-Functional Requirements: This subsection presents the identified non-functional requirements for the Real Estate System. The subcategories of non-functional requirements given are (Usability, Efficiency, and Security). 3.2.2.1 Usability · The system is easy to learn. · The interface designed to be user friendly. · Clients can be able to enter the system without any permission in a very easy and fast way. · Rapid move inside the system. · System available 24 hours in 7 days. 3.2.2.2 Efficiency · The system shall be fast to respond to orders from more than one user. · The system should handle the load without degradation of service. · The system can handle with a maximum number of users, terminals, transaction without performance degradation (Capacity). · The system shall support an arbitrary number of active requests, that is, no requests shall be lost under any circumstances 3.2.2.3 Security · Clients have viewed a page without any details of them. · Broker only person has to access the web page. · Sign up the process include a password. · Prevent data injection. 3.3 System Design 3.3.1 Use Case Diagram Figure 1 use case diagram 3.3.2 Class Diagram Figure 2 Class Diagram 3.3.3 Sequence Diagram 3.3.3.1 Sequence for Broker Figure 3 Sequence/ broker 3.3.3.2 Sequence for Clients Figure 4 Sequence / client 3.3.4 Database diagram Figure 5 Database diagram 3.3.5 System architecture Figure 6 System architecture 3.3.6 Data Flow diagram Figure 7 dataflow diagram End of Chapter 3 Chapter Four (System Implementation) 4.1 Programming Language Tools 4.1.1 What are we used 1- React framework code. 2- HTML/CSS. 3- SQLite Studio Database. 4- Express js. 4.2 Implementation 4.2.1 Introduction First, we created website design through we design screens, forms, and we created more than one design until we came to the final design. After we create database, then we used express js to connect database with the site, and connect all pages. End of chapter 4 Chapter Five (The Conclusion) 5.1 Conclusion The project is designed to cover the needs of Broker and Clients that do not present in the current system, such as provide different types of real estate, massage between broker and customer. depending on the broker' needs and in a way that facilitates the sale and buys process and communication between broker and customer. 5.2 Future work While there are a number of features, needs, wants, and/or capabilities that are known, there are some of these that will not be planned for the final release of this project. However, below is a list of planned enhancements for later versions of Real Estate: · The work of the program accepts a number of real estate office owners. · Merging a group of offices with the application and displaying their properties. · Add some data and corrections to the problems that appear when using the program. · The ability to reset the password when it is lost. End of chapter image2.png image3.png image4.png image5.png image6.png image7.png image8.png image1.png