You are on page 1of 20

ABSTRACT

I propose to build a real estate portal that allows clients to post property for sale as well as
search sort property and contact its dealers online. Our project Real Estate Management is
related to web development of real estate. Real estate management system is advanced
solution for real estate problems. Buyer see all the property along with the complete
description location pin and contact number of the seller. Seller will be registered free of
cost. They can manage their properties. Our main concept is to give best and quick result to
the users

i
ACKNOWLEDGEMENT

In the name of Allah, the most Gracious and the Most Merciful.

Peace and blessing of Allah be upon Prophet Muhammad ‫ﷺ‬

First, praise of Allah, for giving us this opportunity, the strength and the
patience to complete our FYP finally, after the challenges and difficulties.
We would like to thank our supervisor
_____________________________ for his guidance, motivation and most
his significant contribution in this project, expert
_______________________ and _______________________ for giving
us the opportunity to work on this project. We would also like to thanks
our parents for financial and moral support and our friends who have
helped and motivated us throughout. May Allah reward them all
abundantly. Ameen

ii
DEDICATION

This report is dedicated to PAF-KIET University, our Teacher, our


Supervisor, our Parents, our fellow colleagues and the hard-working
students of PAF-KIET, with a hope that they will succeed in every aspect
of their Academic Career and this project may help them in any aspect of
their life.

iii
TABLE OF CONTENTS

ABSTRACT.....................................................................................................................i

ACKNOWLEDGEMENT.............................................................................................ii

DEDICATION...............................................................................................................iii

TABLE OF CONTENTS..............................................................................................iv

LIST OF FIGUERS.......................................................................................................vi

LIST OF TABLES........................................................................................................vii

CHAPTER 1....................................................................................................................1

1. Introduction...........................................................................................................1

1.1. Motivations..............................................................................................................1
1.2. Problem Statement..................................................................................................1
1.3. Objectives and Contributions..................................................................................1
1.4. Project Scope...........................................................................................................2
1.5. Organization of the Report......................................................................................2
CHAPTER 2....................................................................................................................4

2. Literature Review/Process Review........................................................................4

2.1. Introduction.............................................................................................................4
2.2. Literature Review....................................................................................................4
2.3. Functional and Non Functional Requirements........................................................7
2.4. Project Significance.................................................................................................8
2.5. Software Platform....................................................................................................8
2.6. Scalability................................................................................................................8
2.7. Services...................................................................................................................8
CHAPTER 3..................................................................................................................10

3. Projects diagrams.................................................................................................10

3.1. Use Case Diagrams...............................................................................................10


3.2. Activity diagram (diagram correction)..................................................................10
3.3. System Block Diagram..........................................................................................11

iv
3.4. System Architecture..............................................................................................11
3.5. ER Diagram [9].....................................................................................................12
3.6. Inside Project.........................................................................................................13
3.7. Used Technologies................................................................................................15
Chapter NO 4................................................................................................................19

4. Project Planning...................................................................................................19

4.1. Project Timeline Summary....................................................................................19


4.2. Project Timeline Details........................................................................................19
4.3. Black-box Testing.................................................................................................23
4.4. Test Cases..............................................................................................................25
CHAPTER NO 5...........................................................................................................27

5. GUI of Android Application................................................................................27

5.1. Login Interface......................................................................................................27


5.2. Sign up Interface...................................................................................................27
5.3. Student Panel.........................................................................................................28
5.4. Teacher Panel........................................................................................................28
CHAPTER 6..................................................................................................................29

6. Conclusion and Future Work...............................................................................29

6.1. Limitation..............................................................................................................29
6.2. Conclusion.............................................................................................................29
6.3. Future Works.........................................................................................................29
References......................................................................................................................30

Appendix........................................................................................................................31

A. Coding – Server Side Coding..........................................................................31

B. Coding – JASON Package...............................................................................39

C. Coding – Login File.........................................................................................40

D. Gantt chart........................................................................................................49

v
LIST OF FIGUERS
S.NO Figure No. Figure Name Page No.
1 Figure 1.4 Project Scope 5
2 Figure 2.2 Cloud Computing Model 7
3 Figure 3.1 Use Case Diagram - Android Application 13

4 Figure 3.2 Activity Diagram 14

5 Figure 3.3 System Block Diagram 14

6 Figure 3.4 System Architecture 15


7 Figure 3.5 ER Diagram 16

8 Figure 3.6.1 Raspberry pi Model B 18

9 Figure 3.6.2 WIFI Router 18


10 Figure 3.6.3 Android Phone 19

11 Figure 3.7.1 LAMP Server 19

12 Figure 4.1 Project Timeline 23


13 Figure 4.1 Gantt Chart Summary 23
14 Figure 4.2 Gantt Chart Details 26
15 Figure 5.1 Login Interface 33

16 Figure 5.2 Sign Up Interface 33


17 Figure 5.3 Student Panel 34

18 Figure 5.4 Teacher Panel 34

vi
LIST OF TABLES
S.NO TABLE NO. TABLE NAME PAGE NO.

1 Table No. 2.2 Comparison Chart of Different Devices 10

vii
CHAPTER 1
1. Introduction
This

1.1. Motivations

1.2. Problem Statement

1.3. Objectives and Contributions

1.4. Project Scope

1.5. Organization of the Report

1
CHAPTER 2
2. Literature Review/Process Review
2.1. Introduction

2.2. Literature Review

2.3. Functional and Non Functional Requirements

2.3.1. Functional Requirements

2.3.2. Non-Functional Requirements

2.4. Project Significance

2.5. Software Platform

2.6. Scalability

2.7. Services

2
CHAPTER 3
3. Projects diagrams
Based on the above literature review and project scope here are some diagrams, which
illustrates that what will be our project or the system is capable to reach the desired results.

3.1. Use Case Diagrams

3.2. Activity diagram (diagram correction)

3.3. System Block Diagram

3.4. System Architecture

3.5. ER Diagram

3.5.1. ERD Table Dictionary

3.6. Inside Project

3.6.1. Raspberry PI as a server

3.6.2. ROUTER

3.6.3. ANDROID SMART PHONE

3.7. Used Technologies

3.7.1. LAMP SERVER:

PHP (HOME PAGE):

PHP is a general-purpose scripting language that is especially suited to server-side web


development, in which case PHP generally runs on a web server. Any PHP code in a
requested file is executed by the PHP runtime, usually to create dynamic web page content or
dynamic images used on websites or elsewhere.

3
My SQL:

MySQL is an open source relational database management system. Information in a MySQL


database is stored in the form of related tables. MySQL databases are typically used for web
application development (often-accessed using PHP). A MySQL database can be accessed
(queried) directly using; C, C++, Eiffel, Java, Perl, PHP and Python computer languages.
There is also third party support for connection in a Windows environment. MySQL
databases are queried using a subset of the standard Structured Query Language (SQL)
commands.

JAVASCRIPT

JavaScript is a programming language commonly used in web development. It was originally


developed by Netscape as a means to add dynamic and interactive elements to websites.
While JavaScript is influenced by Java, the syntax is more similar to C and is based on
ECMAScript, a scripting language developed by Sun Microsystems.

JavaScript is a client-side scripting language, which means the source code is processed by
the client's web browser rather than on the web server. This means JavaScript functions can
run after a webpage has loaded without communicating with the server. For example, a
JavaScript function may check a web form before it is submitted to make sure all the required
fields have been filled out. The JavaScript code can produce an error message before any
information is actually transmitted to the server.

CHAPTER NO 4
4. Project Planning
4.1. Project Timeline Summary

4.2. Project Timeline Details

4.3. Black-box Testing

Black Box Testing, also known as Behavioral Testing, is a software testing method in which
the internal structure/ design/ implementation of the item being tested is not known to the
tester. These tests can be functional or non-functional, though usually functional. Testing,
either functional or non-functional, without reference to the internal structure of the
component or system.

4
This technique is the procedure to derive and/or select test cases based on an analysis of the
specification, either functional or non-functional, of a component or system without reference
to its internal structure.

Black Box testing method is applicable to the following levels of software testing:

 Integration Testing
 System Testing
 Acceptance Testing

The higher the level, and hence the bigger and more complex the box, the more black box
testing method comes into use.

4.3.1. System Testing

System Testing is a level of the software testing where a complete and integrated software is
tested. The purpose of this test is to evaluate the system’s compliance with the specified
requirements. The process of testing an integrated system to verify that it meets specified
requirements. System testing is the testing of a complete and fully integrated software
product. Usually software is only one element of a larger computer based system. Ultimately,
software is interfaced with other software/hardware systems. System testing is actually a
series of different tests whose sole purpose is to exercise the full computer based
system. System testing involves testing the fully integrated applications including external
peripherals in order to check how components interact with one another and with the system
as a whole. This is also called End-to-End testing scenario. Verify thorough testing of every
input in the application to check for desired outputs. Testing of the user's experience with the
application. . 

That is a very basic description of what is involved in system testing. You need to build
detailed test cases and test suites that test each aspect of the application as seen from the
outside without looking at the actual source code.

4.3.2. Integration Testing

Integration Testing is a level of software testing where individual units are combined and
tested as a group. The purpose of this level of testing is to expose faults in the interaction

5
between integrated units. Test drivers and test stubs are used to assist in Integration Testing.
Testing performed to expose defects in the interfaces and in the interactions between
integrated components or systems. Component integration testing, system integration testing.
Component integration testing performed to expose defects in the interfaces and interaction
between integrated components. System integration testing the integration of systems and
packages; testing interfaces to external organizations (e.g. Electronic Data Interchange,
Internet).

4.3.3. Unit Testing

Unit testing is a level of software testing where individual units/ components of a software
are tested. The purpose is to validate that each unit of the software performs as designed. Unit
is the smallest testable part of software. It usually has one or a few inputs and usually a single
output. In procedural programming, a unit may be an individual program, function,
procedure, etc. In object-oriented programming, the smallest unit is a method, which may
belong to a base/ super class, abstract class or derived/ child class. Unit testing frameworks,
drivers, stubs, and mock/ fake objects are used to assist in unit testing. Unit Testing is
normally performed by software developers themselves or their peers. In rare cases,
independent software testers may also perform it.

4.3.4. User Acceptance Testing

User acceptance testing (UAT) is the last phase of the software testing process. During UAT,
actual software users test the software to make sure it can handle required tasks in real-world
scenarios, according to specifications. UAT is one of the final and critical software project
procedures that must occur before newly developed software is rolled out to the market. UAT
is also known as beta testing, application testing or end user testing. UAT directly involves
the intended users of the software. UAT can be implemented by making software available
for a free beta trial on the internet or through an in-house testing team comprised of actual
software users.

4.4. Test Cases

A test case is a set of conditions or variables under which a tester will determine whether a
system under test satisfies requirements or works correctly. The process of developing test
cases can also help find problems in the requirements or design of an application.

6
TEST CASE # 1

Test Case Title:


Preconditions
Actions
Expected Results
Tested By
Result Pass/Fail

TEST CASE # 2

Test Case Title:


Preconditions
Actions
Expected Results
Tested By
Result Pass/Fail

TEST CASE # 3

Test Case Title:


Preconditions
Actions
Expected Results
Tested By
Result Pass/Fail
TEST CASE # 4

Test Case Title:

7
Preconditions
Actions
Expected Results
Tested By
Result Pass/Fail

CHAPTER NO 5
5. GUI of Android Application
5.1. Login Interface

5.2. Sign up Interface

5.3. Student Panel

5.4. Teacher Panel

8
CHAPTER 6
6. Conclusion and Future Work
6.1. Limitation

 Raspberry pi is not sync able with other pi devices but it can be done as a future work.
 This project is deployed locally not globally.
 Teacher are not able to upload file on specific file format.
 If data exceeds more than 64 GB on pi there will be no more data insertion on raspberry
pi.

6.2. Conclusion
In conclusion, we have developed an android based system which allow the users (i.e.
students or teachers) to get on a single platform which is android based through where
teacher can download there data remotely from anywhere and for the students to download
there important data at their native places. We have used raspberry pi as our cloud server and
data center as it covers multiple advantageous criteria price, power consumption
performance, scalability and complex data processing

9
6.3. Future Works

There is always a chance of improvement, following are the aspects where the system
requires some time to be analyzed and modified

 Improve quality of design.


 Improve quality if database management systems.
 Enhance code structure.
 Enhance application functionality.

REFERENCES
[1] https://www.nist.gov/programs-projects/cloud-computing
[2] http://www.zdnet.com/search/
[3] V.L.Divya: ‘Mobile Application Platform on Cloud Server’, International Conference
on Advancements in Information Technology, 2011, 20
[4] ‘Global Journal of Computer Science and Technology’
[5] V.L.DIVYA: ‘MOBILE APPLICATION WITH CLOUD COMPUTING ’,
International Journal of Scientific and Research Publications, 2012, 2, (4)

[6] https://en.wikipedia.org/wiki/Use_case_diagram
[7] https://en.wikipedia.org/wiki/Activity_diagram
[8] https://www.smartdraw.com/entity-relationship-diagram/
[9] drcurzon, "Raspberry Pi Web Server," [Online]. Available:
http://www.instructables.com/id/Raspberry-Pi-Web-Server/.
[10] "Raspberry PI Hadoop Cluster," 23 october 2014. [Online]. Available:
http://www.widriksson.com/raspberry-pi-hadoop-cluster/.
[11] A. Allan, "Build a Compact 4 Node Raspberry Pi Cluster," 26 august 2015. [Online].
Available: http://makezine.com/projects/build-a-compact-4-node-raspberry-pi-cluster/.

10
[12] L. Orsini, "How To Host A Website With Raspberry Pi," 27 june 2014. [Online].
Available: http://readwrite.com/2014/06/27/raspberry-pi-web-server-website-hosting/.
[13] D. R. W. S. J. J. S. D. P. P. Fung Po Tso, "The Glasgow Raspberry Pi Cloud: A Scale
Model for Cloud Computing Infrastructures".
[14] M. A. S. Waqas Anwaar, "Energy Efficient Computing: A Comparison of Raspberry
PI with Modern Devices," International Journal of Computer and Information Technology ,
vol. 04, no. 02, 2015.
[15] D. A. J. S. Prince Sharma, "A Green-Cloud Network Scenario: Towards Energy
Efficient Cloud Computing," vol. 02, no. 10, 2012.
[16] M. v. d. Vegt, "Raspberry Pi 2 as an Feasible Alternative for Cloud Based Parallel
Computing Solutions".
[17] [Online]. Available: https://jwt.io/.
[18] "Native navigation," 13 march 2017. [Online]. Available:
http://www.reactnative.com/.

APPENDIX
A. Coding – Server Side Coding
<?php

use \Psr\Http\Message\ServerRequestInterface as Request;

use \Psr\Http\Message\ResponseInterface as Response;

use Firebase\JWT\JWT;

use Slim\Middleware\TokenAuthentication;

//https://www.programmableweb.com/news/how-to-create-rest-api-using-slim-
framework/how-to/2017/02/28?page=2

require 'vendor/autoload.php';

include 'config.php';

require './functions.php';

$app = new \Slim\App(["settings" => $config]);

//Handle Dependencies

$container = $app->getContainer();

$container['db'] = function ($c) {

try{

$db = $c['settings']['db'];

11
$options = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,

PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,

);

$pdo = new PDO("mysql:host=" . $db['servername'] . ";dbname=" .


$db['dbname'],

$db['username'], $db['password'],$options);

return $pdo;

B. Coding – JASON Package


{
"name": "AwesomeProject",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js
start",
"test": "jest"

C. Coding – Login File


D. Gantt chart

12

You might also like