You are on page 1of 85

(Your Project Name here)

ACKNOWLEDGEMENT

The Satisfactory that accompanies the successful completion of a project would be


incomplete without the people who made it possible. Their constant guidance and
encouragement crowned our efforts with success.

We express our profound thanks to Prof. xxxxx Sir, Head of the Department of
Computer Engineering, R.K. College of Engineering and Technology, Rajkot. We would
like to thank them for their continuous support and encouragement.

Last but not the least, our appreciable also goes to all staff members of Computer
Engineering Department and to our fellow classmates who directly or indirectly helped us.

We take this opportunity to thank Harivandana College, Rajkot for giving us opportunity
to do this project. We acknowledgement all our friends for their innumerable guidelines and
suggestions. We also thank all the staff members and the Mr. XXX Sir Rajkot for
their valuable help and co-operation. We thank all of you once again.

Created By : Dharmendra Ambani Do not copy of this report 1


(Your Project Name here)

Project Title:
Property Search and Management iOS Application.

Student Information:
1) Enrollment No.: xxxxx
Name : Dharmendra J. Ambani
Address : At: xxx,
Tal: xxx,
Dist: Rajkot
Morbi-363-641
Phone no.: +91 94265 26980 (Gujarat)
E-mail : DjAmbani.android@gmail.com

Created By : Dharmendra Ambani Do not copy of this report 2


(Your Project Name here)

LIST OF FIGURES

Figure Figure Description Page No.


No.
1 Use case diagram 39-40
2 Level 0 Data Flow Diagram 42
3 Context Level Diagram 43

Created By : Dharmendra Ambani Do not copy of this report 3


(Your Project Name here)

LIST OF TABLES

Table No. Name of Table Page no.

1 iOS Architecture 18
2 iOS Framework 22
3 Project Development Model 32
4 Project plan 32
5 Schedule Representation 32-35

Created By : Dharmendra Ambani Do not copy of this report 4


(Your Project Name here)

 Notation and Naming Convention


 Use case

Sys
tem

UseCase1
Actor1
System boundary Actor r Use Case

-End1

*
-End2
*
Communication Link

 Class diagram
-End1

*
-End2
*
Class Relationship Generalization

 System activity diagram

Active Sate State Initial State

Final State control flow Conditional state

Created By : Dharmendra Ambani Do not copy of this report 5


(Your Project Name here)

 Sequence diagram

Object line Activation message transition


 Flow chart:

Process decision

Data manual input

Transaction

 Data flow Diagram:

Database Process Process


Name

Data Transfer External Interface

Created By : Dharmendra Ambani Do not copy of this report 6


(Your Project Name here)

TABLE OF CONTENTS

ABSTRACT 1

TABLES
1. List of Figures 2
2. List of Tables 3

NOTATIONS & ABBREVATIONS 4

1. INTRODUCTION 9
1.1Project Summary
1.2 Objective/aim/vision
1.3 Market Potential & Competitive advantage/Scope
1.4 Study of existing system
1.5 Proposed system
1.6 Project Boundary
1.7 Duration

2. LITERATURE SURVEY 16
2.1 iOS Overview
2.1.1 iOS Architecture
2.1.2 Why we used iOS?
2.2 iOS Framework
2.2 PHP/MySQL
2.3.1 Advantages of MySQL

3. PROJECT MANAGEMENT 30
3.1 Project Planning and Scheduling
3.1.1 Project development Model
3.1.2 .Project plan
3.1.3 Schedule Representation

Created By : Dharmendra Ambani Do not copy of this report 7


(Your Project Name here)

4. REQUIREMENT SPECIFICATION 36
4.1 Functional Requirements
4.2 Hardware Requirements
4.3 Software Requirements

5. SYSTEM DESIGN 38
5.1 Basic Flow of System
5.1.1 Use Case Diagram
5.1.2 Data Flow Diagram
5.2 System Procedural Design
5.2.1 Context Level Diagram
5.2.2 E-R diagram

6. IMPLEMENTATION 44

7. TESTING 68

8. FUTURE WORK 72

9. CONCLUSION 74

10. REFERENCES 76

Created By : Dharmendra Ambani Do not copy of this report 8


(Your Project Name here)

1
INTRODUCTION

Created By : Dharmendra Ambani Do not copy of this report 9


(Your Project Name here)

1.1) Project Summary

 This iPhone app enables you to search for your perfect new home [or premises] anytime,
anywhere! Whether you‘re searching for a property to buy or rent our app will help you
find exactly what you‘re looking for quickly and easily.

 Our stylish app makes it simple to not only search for a property, but also view details,
browse through photos or floor plans and even compile a favourites list. It‘s easy to use
design incorporates fantastic functionality like email a friend, mortgage calculators,
arrange a viewing options, EPC details and the ability to contact our office directly. If
you‘re looking to move, this app is essential to help you find the right property for you.

 Property Management and Search Application is allows to finding property and manages
that according to user point of view.

 It communicate directly PHP/MySQL through the API.

 It gives facility to Search, Favourites, Recent, Calculator, Office etc.

In Search Tab
 Criteria
-I Want to (Property Availability Type)
-Min Price (No Min Price 10000, 20000,30000,40000, 50000) [Hard Code]
-Max Price (No Max Price, 100000, 200000, 300000, 400000, 500000) [Hard Code]
-Type (Property Type)
-Min. Bedrooms (1,2,3,4,5,6) [Hard Code]

 Favorites
Here, user will get list of all the properties selected under ‗Favorite‘ list, set via
Property Detail page (Local Devices Level Storage / Management).

Created By : Dharmendra Ambani Do not copy of this report 10


(Your Project Name here)

 Recent
Here, user will get list of last search criteria for their future reference / search. (Local
Devices Level Storage / Management).

 Calculator
Enter the criteria
 Loan Required (Rs.)
 Payment Period (Years)
 Interest Rate (%)

 Calculate result on the fly


Monthly payment
 interest Only (Rs)
 Repayments (Rs)

 Office / Contact Us
 Contact Details

1.2 Objective/aim/vision
 Reasons:

 Property Management System is a user friendly contact and property manager for real
estate professionals. Save time and sell more by empowering to easily keep track of leads,
manage listings, and market to new prospects.

 Property App gives you a clear view of what is going on in your business and provides
simple steps that your team can easily follow to help grow your business. Take your
business to the next level and stop wasting time with outdated or inefficient practices.
eProperty has powerful search and match facility to match property with buyer by the
selection parameter. No more need for Excel spreadsheets. Keep track of all your
properties. eProperty has facilities to keep property related documents, images and
automatically resizes photos and creates thumbnails for you.

Created By : Dharmendra Ambani Do not copy of this report 11


(Your Project Name here)

 Benefits
 Type of property and features searching for.
 Match with properties for sale by number of bedrooms / price criteria.
 Display matched property details easily and quickly by one click.
 Enter Solicitor details.
 Enter Property for Sale details, Add Room descriptions.
 Add up to any nos of photos and property document per property
 Produce Documents, contracts and marketing brochures with templates.
 List all viewings for property.
 Quick Search for property details.
 Diaries all viewings by Agent and by Office.
 Quick Search off all records.
 Filter all views for easy record location.
 Easy to use and impressive GUI.

 Goals & Objectives :


 This application aims at reducing human effort & time of working Employees.
 The main objective of this application is that any Employee of the organization can
access from anywhere.
 This application is user friendly & easy to use for Employees.
 It provides fast & efficient way of solving & managing the transactions.

 AIMS OF THE PROJECT


The aims of the project are to determine the suitable needs and requirements to design
and develop a real estate agency web application. The application will provide a systematic
assessment of the quantity and the quality (in terms of both the location and the price) of the
real estates offered in Macedonia. The primary goal of the application is to connect the
agencies with the clients, providing them with the up-todate information of the available real
estate. The project combines datasets and various knowledge and interpretation tools from the
real-estate industry to provide images of, and characterise resources. By using the
application, clients can upload information about their estates, while potential customers can
visually search for an estate and take a look of its surrounding, the exterior and the interior

Created By : Dharmendra Ambani Do not copy of this report 12


(Your Project Name here)

of the estate and the household. Furthermore, customers can browse through different areas
of the country, thus allowingthem to obtain information on the prices and the estates
offered around the country. This type of online application is very helpful and can thus be
applied by any real estate agency. By manipulating and utilising the existing database of
the agency, the application can also be linked and made available from the web site of the
agency. The long term strategic value of the project is that it will:- identify estates that may
have potential for future development;

- identify estates that may be used for rent;


- identify estates that may be used for sale;
- identify estates that can be bought;
- identify client that want to buy, sell or rent an estate;
- provide a systematic evaluation from sites which require
sales management;
- increase the costs of attractiveness of some estates; and
- identify new (unknown) real-estate sources.

1.3 SCOPE

 Major Functionalities of the system


The scope of the project is defining what will and will not be supported by the
application. This application will enable servers to manage accounts: upload photos, fill out
and submit offers and advertisements, including short text descriptions, as well as register for
an open house days and place offers for auctioned estates. On the other hand, it will also
enable real-estate agencies/agents to place ads, text descriptions and schedule open-house and
presentation days. In its current stage of development, it is not planned for the application to
support chat rooms, videos and games.

 It allows employees to post complaint online.


 It provides solution faster.
 Employees are able to check the status of their Complaint.
 It provides with latest patches & updates for Employees for computer security.
 Registered Employee can login to the website & post his/her complaint.

Created By : Dharmendra Ambani Do not copy of this report 13


(Your Project Name here)

 It provides security by not giving authority to any user to access the website.
 Employees can view news & alerts related to any antivirus or other related to security.
 It allows Network Admin to manage the complaints posted by the user.

 1.4 STUDY OF EXISTING SYSTEM


In past system before the application was developed the following difficulties were faced
by the Employees & Administrators. They are described below:

 Employees: If Employees have any complaints they have to fill the Complaint Form &
wait for the action to be taken. This procedure is time consuming & requires human
effort.
 Network Admin: The person in charge of the complaint has to keep the record of all the
complaints & he has to refer through the records for checking the status of the
Complaints. This is very tedious job & time is wasted.

 1.5 PROPOSED SYSTEM


The system aim is to provide solution to the complaints submitted by the employee. Each
complaint will be given a Complaint ID for future reference. The complaint can be forwarded
to the respective departments by the Super Admin. The respective departments will receive
complaints from Super Admin. So the Network Admin in charge of the complaints & will
assign a person to track & solve the complaint. The updates about new patches & updates
related to the antivirus will be available for all employees. All the user accounts will be
managed by the System Administrators only.

The proposed system has the following advantages to meet the dem& of today‘s
professionals, in a whole new way.

Simple: Software is easy to use & user friendly.


Less Effort: It requires less human effort
Fast & Efficient: Since everything is online, it saves much of the Employees time.

Created By : Dharmendra Ambani Do not copy of this report 14


(Your Project Name here)

 1.6 Product Boundary:


iPhone with internet connection is necessary using our application.

 1.7 Duration:
In 16 weeks our website will be completed.
Analysis: 4 weeks
Design: 3 weeks
Coding: 6 weeks
Testing: 3 weeks

Created By : Dharmendra Ambani Do not copy of this report 15


(Your Project Name here)

2
LITERATURE
SURVEY

Created By : Dharmendra Ambani Do not copy of this report 16


(Your Project Name here)

 2.1 iOS Overview


iOS (previously iPhone OS) is a mobile operating system developed and distributed
by Apple Inc. Originally released in 2007 for the iPhone and iPod Touch, it has been
extended to support other Apple devices such as the iPad and Apple TV. Unlike Microsoft's
Windows Phone (Windows CE) and Google's Android, Apple does not license iOS for
installation on non-Apple hardware. As of September 12, 2012, Apple's App Store contained
more than 700,000 iOS applications, which have collectively been downloaded more than 30
billion times. It had a 21% share of the smartphone mobile operating system units shipped in
the fourth quarter of 2012, behind only Google's Android. In June 2012, it accounted for 65%
of mobile web data consumption (including use on both the iPod Touch and the iPad).At the
half of 2012, there were 410 million devices activated. According to the special media event
held by Apple on September 12, 2012, 400 million devices have been sold through June
2012.

The user interface of iOS is based on the concept of direct manipulation, using multi-
touch gestures. Interface control elements consist of sliders, switches, and buttons. Interaction
with the OS includes gestures such as swipe, tap, pinch, and reverse pinch, all of which have
specific definitions within the context of the iOS operating system and its multi-touch
interface. Internal accelerometers are used by some applications to respond to shaking the
device (one common result is the undo command) or rotating it in three dimensions (one
common result is switching from portrait to landscape mode).

iOS is derived from OS X, with which it shares the Darwin foundation. iOS is Apple's
mobile version of the OS X operating system used on Apple computers.

In iOS, there are four abstraction layers: the Core OS layer, the Core Services layer,
the Media layer, and the Cocoa Touch layer. The current version of the operating system
(iOS 6.1.3) dedicates 1-1.5 GB of the device's flash memory for the system partition, using
roughly 800 MB of that partition (varying by model) for iOS itself.

iOS currently runs on iPhone, iPad, iPod touch and Apple TV.

Created By : Dharmendra Ambani Do not copy of this report 17


(Your Project Name here)

 2.1.1 iOS Architecture

1. Cocoa Touch
 UIKit – UI Elements, lifecycle management, touch, gestures
 Address Book UI – Contacts, adding, editing
 Event Kit UI – Calendar events
 Game Kit Framework – P2P networking, Game Center
 iAd – Apple‘s advertising platform
 Map Kit – Google maps
 Message UI – Email and SMS

2. Media
 Assets Library – Photos and Videos on device
 AV Foundation – Advanced audio and video
 Core Audio – Low level audio
 Core Graphics – 2D Drawing, Quartz
 Core Text – Advanced text layout and fonts
 Image I/O – Importing/exporting images
 Media Player – Simple audio/video playback
 OpenAL – Positional audio
 OpenGL ES – 2D and 3D drawing
 Quartz Core – Animations

3. Core Services
 Address Book – Lower layer contacts

Created By : Dharmendra Ambani Do not copy of this report 18


(Your Project Name here)

 CFNetwork – Socket level networking


 Core Data – Data model for MVC
 Core Location – GPS, cell or Wi-Fi based location services
 Core Media – Low level media used by AV
 Core Telephony – Phone interface
 Event Kit – Low level calendar events
 Foundation – Objective-C wrapped core foundation
 Mobile Core Services – Uniform type identifier support
 Quick Look – Previewing files
 Store Kit – In app purchases

4. Frameworks
 Accelerate – Big number and DSP calculations
 External Accessory – Communicate with hardware accessories
 Security – Certificates and cryptography
 System – Low level operating system methods

2.1.2 Why we used iOS?


iOS Gives Extra features like,
 Folders

With iOS 4 came the introduction of a simple folder system. When applications are in
"jiggle mode", any two (with the exception of Newsstand in iOS 5 and later, which acts like a
folder) can be dragged on top of each other to create a folder, and from then on, more apps
can be added to the folder using the same procedure, up to 12 on iPhone 4S and earlier and
iPod touch, 16 on iPhone 5, and 20 on iPad. A title for the folder is automatically selected by
the category of applications inside, but the name can also be edited by the user.

 Notification Center

In the iOS 5 update, the notifications feature was completely redesigned. Notifications
collate in a window which can be dragged down from the top of the screen. If a user touches
a received notification, the application that sent the notification will be opened.

Created By : Dharmendra Ambani Do not copy of this report 19


(Your Project Name here)

 Multitasking

Before iOS 4, multitasking was limited to a selection of the applications Apple included
on the device. Users could, however "jailbreak" their device in order to unofficially
multitask.Starting with iOS 4, on 3rd-generation and newer iOS devices, multitasking is
supported through seven background APIs:

1. Background audio – application continues to run in the background as long as it is


playing audio or video content
2. Voice over IP – application is suspended when a phone call is not in progress
3. Background location – application is notified of location changes
4. Push notifications
5. Local notifications – application schedules local notifications to be delivered at a
predetermined time
6. Task completion – application asks the system for extra time to complete a given task
7. Fast app switching – application does not execute any code and may be removed from
memory at any time

In iOS 5, three new background APIs were introduced:

1. Newsstand – application can download content in the background to be ready for the user
2. External Accessory – application communicates with an external accessory and shares
data at regular intervals
3. Bluetooth Accessory – application communicates with a bluetooth accessory and shares
data at regular intervals

 Switching applications

In iOS 4.0 or later, double-clicking the home button activates the application switcher. A
scrollable dock-like interface appears from the bottom, moving the contents of the screen up.
Choosing an icon switches to an application. To the far left are icons which function as music
controls, a rotation lock, and on iOS 4.2 and above, a volume controller. Holding the icons
briefly makes them "jiggle" (similarly to the homescreen) and allows the user to force quit
the applications by simply tapping the red minus circle that appears at the corner of the app's
icon.

Created By : Dharmendra Ambani Do not copy of this report 20


(Your Project Name here)

 Siri

Siri is an intelligent personal assistant and knowledge navigator which works as an


application on supported devices. The service, directed by the user's spoken commands, can
do a variety of different tasks, such as call or text someone, open an app, search the web,
lookup sports information, find directions or locations, and answer general knowledge
questions (e.g. "How many cups are in a gallon?"). Siri is currently only available on iPhone
4S, iPhone 5, 5th generation iPod touch, iPad Mini, 3rd generation iPad and 4th generation
iPad.

 Game Center

Game Center is an online multiplayer "social gaming network" released by Apple. It


allows users to "invite friends to play a game, start a multiplayer game through matchmaking,
track their achievements, and compare their high scores on a leader board." iOS 5 and above
adds support for profile photos.

Game Center was announced during an iOS 4 preview event hosted by Apple on April 8,
2010. A preview was released to registered Apple developers in August. It was released on
September 8, 2010 with iOS 4.1 on iPhone 4, iPhone 3GS, and iPod touch 2nd generation
through 4th generation.[Game Center made its public debut on the iPad with iOS 4.2.1.There
is no support for the iPhone 3G and original iPhone. However, Game Center is unofficially
available on the iPhone 3G via a hack.

 iOS Framework
This contains information about the frameworks of iOS. These frameworks

provide the interfaces you need to write software for the platform. Where applicable, the

tables in this appendix list any key prefixes used by the classes, methods, functions, types,

or constants of the framework. Avoid using any of the specified prefixes in your own symbol

names.

Created By : Dharmendra Ambani Do not copy of this report 21


(Your Project Name here)

A framework is a directory that includes a shared library, header files to access the
code stored in that library, and other resources such as image and sound files. A shared
library defines functions and methods that apps can call.

iOS provides many frameworks that you can use in app development. To use a
framework, add it to your project so your app can link to it. Most apps link to the Foundation,
UIKit, and Core Graphics frameworks. Depending on which template you choose for your
app, other frameworks might also be included. You can always add additional frameworks to
your project if the core set of frameworks does not meet your app‘s requirements.
iOS Apps Are Based on the Foundation and UIKit Frameworks.

When you begin programming, you mainly use the Foundation and UIKit frameworks
because they cover most of your app development needs.

The Foundation Framework Provides Basic System Services for All Apps
Your apps, as well as UIKit and other frameworks, are built on the Foundation framework
infrastructure. The Foundation framework provides Objective-C wrappers for many of the
features in the Core Foundation framework (which is C-based).

 Use Foundation to:


Create and manage collections such as arrays and dictionaries.
Access images and other resources stored in your app.
Create and manage strings.

Created By : Dharmendra Ambani Do not copy of this report 22


(Your Project Name here)

Post and observe notifications.


Create date and time objects.
Automatically discover devices on IP networks.
Manipulate URL streams.
Perform code asynchronously.

You already used the Foundation framework in Your First iOS App. For example,
you used an instance of the NSStringclass to store the user‘s input in userName. You also
used the Foundation instance method initWithFormat: to create the greeting string.

The UIKit Framework Provides Classes to Create a Touch-Based User Interface


All iOS apps are based on UIKit—you can‘t ship an app without this framework. UIKit
provides the infrastructure for drawing to the screen, handling events, and creating common
user-interface elements. UIKit also organizes a complex app by managing the content that is
displayed onscreen.

 Use UIKit to:


Construct and manage your user interface.
Handle touch and motion-based events.
Present text and web content.
Optimize your app for multitasking.

 Create custom user-interface elements.

In Your First iOS App Tutorial, you used UIKit. When you examined how an app starts
up, you saw that theUIApplicationMain function creates an instance of the UIApplication
class, which handles incoming user events. You implemented the UITextFieldDelegate
protocol in order to dismiss the keyboard when the user taps the Done key. In fact, you used
UIKit to create your entire interface with the UITextField, UILabel, and UIButton classes.

Other Important Frameworks You Should Know About

Created By : Dharmendra Ambani Do not copy of this report 23


(Your Project Name here)

The Core Data, Core Graphics, Core Animation, and OpenGL ES frameworks are
advanced technologies. Although these frameworks are important for app development, they
require time to learn and master.

The Core Data Framework Manages the Data Model of an App

Core Data provides object-graph management. With Core Data, you create model
objects, known as managed objects. You manage relationships between those objects and
make changes to the data through the framework. Core Data takes advantage of the built-in
SQlite technology to store and manage data efficiently.

 Use Core Data to:

Save and retrieve objects from storage.


Support basic undo/redo.
Validate property values automatically.
Filter, group, and organize data in memory.
Manage results in a table view with [NSFetchedResultsController].
Support document-based applications.

The Core Graphics Framework Helps You Create Graphics High-quality graphics are
an important part of all iOS applications. The simplest and most efficient way to create
graphics in iOS is to use prerendered images with the standard views and controls of the
UIKit framework and let iOS do the drawing. When you need to create complex graphics,
Core Graphics provides a low-level graphics library to help you. Core Graphics, also known
as Quartz, handles native 2D vector- and image-based rendering.

Use Core Graphics to:

Make path-based drawings.


Use anti-aliased rendering.
Add gradients, images, and colors.
Use coordinate-space transformations.
Create, display, and parse PDF documents.

Created By : Dharmendra Ambani Do not copy of this report 24


(Your Project Name here)

Core Animation Allows You to Make Advanced Animations and Visual Effects UIKit
provides animations that are built on top of the Core Animation technology. If you need
advanced animations beyond the capabilities of UIKit, you can use Core Animation directly.
The Core Animation interfaces are contained in the Quartz Core framework. With Core
Animation, you create a hierarchy of layer objects that you manipulate, rotate, scale,
transform, and so forth. By using Core Animation‘s familiar view-like abstraction, you can
create dynamic user interfaces without having to use low-level graphics APIs like OpenGL
ES.

 Use Core Animation to:

Create custom animations.


Add timing functions to graphics.
Support key frame animation.
Specify graphical layout constraints.
Group multiple- layer changes into an atomic update.

The OpenGL ES Framework Provides Tools for 2D and 3D Drawing OpenGL ES


supports basic 2D and 3D drawing. Apple‘s implementation of the OpenGL ES standard
works closely with the device hardware to provide high frame rates for full-screen game-style
applications.

 Use OpenGL ES to:

Create 2D and 3D graphics.


Make more complex graphics such as data visualization, flight simulation, or video games.
Access underlying graphics hardware

 PHP/MySQL

 What is MySQL?

 MySQL is a database system used on the web

Created By : Dharmendra Ambani Do not copy of this report 25


(Your Project Name here)

 MySQL is a database system that runs on a server


 MySQL is ideal for both small and large applications
 MySQL is very fast, reliable, and easy to use
 MySQL supports standard SQL
 MySQL compiles on a number of platforms
 MySQL is free to download and use
 MySQL is developed, distributed, and supported by Oracle Corporation
 MySQL is named after co-founder Monty Widenius's daughter: My

The data in MySQL is stored in tables. A table is a collection of related data, and it
consists of columns and rows.

Databases are useful when storing information categorically. A company may have a
database with the following tables:

 Employees
 Products
 Customers
 Orders

 What is PHP?

PHP is a server-side scripting language designed for web development but also used
as a general-purpose programming language. PHP is now installed on more than 244
million websites and 2.1 million web servers.Originally created by Rasmus Lerdorf in 1995,
the reference implementation of PHP is now produced by The PHP Group.While PHP
originally stood for Personal Home Page, it is now said to stand for PHP: Hypertext
Preprocessor, a recursive acronym.

PHP code is interpreted by a web server with a PHP processor module which generates
the resulting web page: PHP commands can be embedded directly into an HTML source
document rather than calling an external file to process data. It has also evolved to include
a command-line interface capability and can be used in standalone graphical applications.

 What is a PHP File?

 PHP files can contain text, HTML, JavaScript code, and PHP code

Created By : Dharmendra Ambani Do not copy of this report 26


(Your Project Name here)

 PHP code are executed on the server, and the result is returned to the browser as plain
HTML
 PHP files have a default file extension of ".php"

 What Can PHP Do?

 PHP can generate dynamic page content


 PHP can create, open, read, write, and close files on the server
 PHP can collect form data
 PHP can send and receive cookies
 PHP can add, delete, modify data in your database
 PHP can restrict users to access some pages on your website
 PHP can encrypt data

With PHP you are not limited to output HTML. You can output images, PDF files, and
even Flash movies. You can also output any text, such as XHTML and XML.

 Why PHP?

 PHP runs on different platforms (Windows, Linux, Unix, Mac OS X, etc.)


 PHP is compatible with almost all servers used today (Apache, IIS, etc.)
 PHP has support for a wide range of databases
 PHP is free. Download it from the official PHP resource: www.php.net
 PHP is easy to learn and runs efficiently on the server side

 2.3.1 Advantages of MySQL


Some of its advantages include the following:

 It's easy to use: While a basic knowledge of SQL is required—and most relational
databases require the same knowledge—MySQL is very easy to use. With only a few
simple SQL statements, you can build and interact with MySQL.
 It's secure: MySQL includes solid data security layers that protect sensitive data from
intruders. Rights can be set to allow some or all privileges to individuals. Passwords are
encrypted.
 It's inexpensive: MySQL is included for free with NetWare® 6.5 and available by free
download from MySQL Web site.

Created By : Dharmendra Ambani Do not copy of this report 27


(Your Project Name here)

 It's fast: In the interest of speed, MySQL designers made the decision to offer fewer
features than other major database competitors, such as Sybase* and Oracle*. However,
despite having fewer features than the other commercial database products, MySQL still
offers all of the features required by most database developers.
 It's scalable: MySQL can handle almost any amount of data, up to as much as 50 million
rows or more. The default file size limit is about 4 GB. However, you can increase this
number to a theoretical limit of 8 TB of data.
 It manages memory very well: MySQL server has been thoroughly tested to prevent
memory leaks.
 It supports Novell Cluster Services: MySQL on NetWare runs effectively with Novell®
Cluster Services™, letting you add your database solution to a Novell cluster. If one
server goes down, MySQL on an alternate server takes over and your customers won't
know that anything happened.
 It runs on many operating systems: MySQL runs on many operating systems, including
Novell NetWare, Windows* Linux*, many varieties of UNIX* (such as Sun* Solaris*,
AIX, and DEC* UNIX), OS/2, FreeBSD*, and others.
 It supports several development interfaces: Development interfaces include JDBC,
ODBC, and scripting (PHP and Perl), letting you create database solutions that run not
only in your NetWare 6.5 environment, but across all major platforms, including Linux,
UNIX, and Windows.

 3.4 Introduction to SQLite


SQLite is a very popular embedded database, as it combines a clean SQL interface
with a very small memory footprint and decent speed. Moreover, it is public domain, so
everyone can use it. Lots of firms (Adobe, Apple, Google, Sun, and Symbian) and open-
source projects (Mozilla, PHP, Python) all ship products with SQLite.

iPhone provides full relational database capabilities through the SQLite library,
without imposing any additional limitations.

For iPhone, SQLite is ―baked into‖ the iPhone runtime, so every iPhone application
can create SQLite databases.

Created By : Dharmendra Ambani Do not copy of this report 28


(Your Project Name here)

SQLite is a relational database management system (RDBMS). It is well


regarded, being:

 Open source
 Standards-compliant
 Lightweight
 Single-tier

 Quick SQLite Primer

SQLite, as the name suggests, uses a dialect of SQL for queries (SELECT), data
manipulation (INSERT, et al), and data definition (CREATE TABLE, et al). SQLite has a
few places where it deviates from the SQL-92 standard, no different than most SQL
databases. The good news is that SQLite is so space-efficient that the Android runtime can
include all of SQLite, not some arbitrary subset to trim it down to size.

The biggest difference from other SQL databases you will encounter is probably the
data typing. While you can specify the data types for columns in a CREATE TABLE
statement and while SQLite will use those as a hint that is as far as it goes. You can put
whatever data you want in whatever column you wa nt.

In addition, there are a handful of standard SQL features not supported in SQLite such
as nested transactions, RIGHT OUTER JOIN and FULL OUTER JOIN, and some flavors of
ALTER TABLE.

Created By : Dharmendra Ambani Do not copy of this report 29


(Your Project Name here)

Created By : Dharmendra Ambani Do not copy of this report 30


(Your Project Name here)

3
PROJECT
MANAGEMENT

Created By : Dharmendra Ambani Do not copy of this report 31


(Your Project Name here)

 3.1 Project Planning and Scheduling

 Project development Model

 Software Development Process: Waterfall Model

In the waterfall model, a project progresses through an orderly sequence of steps from
the initial software concept through system testing. The project holds a review at the end of
each phase to determine whether it is ready to advance to the next phase - from requirements
analysis to architectural design. If the review determines that the project isn't ready to move
to the next phase, it stays in the current phase until it is ready.

The waterfall model is document driven, which means that the main work products that
are carried from phase to phase are documents. In the pure waterfall model, the phases are
also discontinuous - they do not overlap. The following shows how the pure waterfall
lifecycle model progresses.

The pure waterfall model performs well for product cycles in which you have a stable
product definition and when you're working with well-understood technical methodologies.
In such cases, the waterfall model helps you to find errors in the early, low-cost stages of a
project. It provides the requirement stability that developers crave. If you're building a well-
defined maintenance release of an existing product or porting an existing product to a new
plat. Form, a waterfall lifecycle might be the right choice for rapid development.

The pure waterfall model helps to minimize planning overhead because you can do all
the planning up front. It doesn't provide tangible results in the form of software until the end
of the lifecycle, but, to someone who is familiar with it, the documentation it generates
provides meaningful progress throughout the lifecycle.

Created By : Dharmendra Ambani Do not copy of this report 32


(Your Project Name here)

The waterfall model works well for projects that are well understood hut complex,
because you can benefit from tackling complexity in an orderly way. It works well when
quality requirements dominate cost and schedule requirements. Elimination of midstream
changes eliminates a huge and common source of potential errors.

 3.1.2 Project plan

System Analysis Duration Resource


Requirement
System Design and 3WEEK All
Documentation
Actual Development 2 WEEK All
Unit Testing 2 WEEK All
Integrated of System 2 WEEK All
Test case preparation 3 WEEK All
System Testing 3 WEEK All
Bug Fixing 1 WEEK All

Created By : Dharmendra Ambani Do not copy of this report 33


(Your Project Name here)

Table : Project plan

 3.1.3 Schedule Representation

Work Tasks of 1st Week 1 Week 2 Week 3 Week 4


Month
January
Analysis

Study of OOP Concepts

Overview Objective C

Installation software
-MAC OS X
-XCode
- Photoshop
-Introduction about
XCode

Created By : Dharmendra Ambani Do not copy of this report 34


(Your Project Name here)

Overview of iOS
-Architecture
-Controls
-Properties

Work Tasks of 2nd Week 1 Week 2 Week 3 Week 4


Month
February
Analysis

Introduction about
Database and Database
Connectivity API

Analysis about our


project

Design
-logo
-images

Created By : Dharmendra Ambani Do not copy of this report 35


(Your Project Name here)

Work Tasks of 3rd Week 1 Week 2 Week 3 Week 4


Month
March
Analysis

Prepare Documentation
-role specification
-project Management

Prepare Data dictionary

Design diagram
-class diagram
-sequence diagram
-E-R diagram
-Control flow diagram
-DFD diagram

Varify over project

Created By : Dharmendra Ambani Do not copy of this report 36


(Your Project Name here)

Work Tasks of 4th Week 1 Week 2 Week 3 Week 4


Month
April
Analysis

Start Implementation

Created By : Dharmendra Ambani Do not copy of this report 37


(Your Project Name here)

4
Requirements
Specification

Created By : Dharmendra Ambani Do not copy of this report 38


(Your Project Name here)

 4.1 HARDWARE REQUIREMENTS

 2.5GHz Mac mini


 2.5GHz dual-core Intel Core i5
 4GB memory
 500GB hard drive1
 Intel HD Graphics 4000
 OS X Mountain Lion
 iPhone Device

 4.2 SOFTWARE REQUIREMENTS

Programming Technology used


 Tool:Xcode
 Platform: Objective C,iOS
 Front-End: Objective C, C / C++
 Back-End: PHP/MySQL,SQLite

Operating System
Name: MAC OX X 10.7 or greater

Web Browser
Name: Chrome, Mozilla, Safari

Created By : Dharmendra Ambani Do not copy of this report 39


(Your Project Name here)

5.
SYSTEM DESIGN

Created By : Dharmendra Ambani Do not copy of this report 40


(Your Project Name here)

 5.1 Basic Flow of System


 5.1.1 Use Case Diagram

Created By : Dharmendra Ambani Do not copy of this report 41


(Your Project Name here)

Created By : Dharmendra Ambani Do not copy of this report 42


(Your Project Name here)

 5.1.2 Data flow diagram

What is a Data Flow Diagrams(DFD)?


Data flow diagrams are commonly used for understanding the system and can be
effectively used for analysis. When you are designing an application system, you must first
consider the flow of the data into the out of it. A DFD shows the flow of the data through a
system. DFD does not show decision or timing of events.

Created By : Dharmendra Ambani Do not copy of this report 43


(Your Project Name here)

Created By : Dharmendra Ambani Do not copy of this report 44


(Your Project Name here)

 5.2 System Procedural Design


 5.2.1 Context Level Diagram

Created By : Dharmendra Ambani Do not copy of this report 45


(Your Project Name here)

6
Implementation

Created By : Dharmendra Ambani Do not copy of this report 46


(Your Project Name here)

 Property_Management

Table Name Property_Management

Description This table is used to maintain and store the


information related to property

Primary Keys PROPERTY_ID


Foreign Keys TYPE-ID
AVAILABILITY_TYPE_ID

Key Field Name Type Size Constraints

* PROPERTY_ID Integer 5 Not Null


PROPERTY_TITLE Varchar 25 Not Null

TYPE_ID Varchar 5 Not Null

AVAILABILITY_TYPE_ID Integer 5 Not Null

ADDRESS Varchar 30 Not Null

PROPERTY_STATUS Varchar 8 Not Null


NO_OF_BEDROOMS Integer 3 Not Null

PRICE Integer 8 Not Null

LONGITUDE Float 10 Not Null

LATITUDE Float 10 Not Null

PHOTO_ENTRY Varchar(max) - Not Null


DESCRIPTION Varchar(max) - Not Null

FLOOR_PLAN Varchar 25 Not Null

Created By : Dharmendra Ambani Do not copy of this report 47


(Your Project Name here)

 Property_Type_Management

Table Name Property_Type_Management

Description This table is used to maintain and store the information


related to property type.

Primary Keys TYPE_ID

Foreign Keys -

Key Field Name Type Size Constraints


* TYPE_ID Integer 5 Not Null

TYPE Varchar 25 Not Null

 Property_Availability_Manage ment

Table Name Property_Availability_Manage ment

Description This table is used to maintain and store the


information related to property availability.

Primary Keys AVAILABILITY_TYPE_ID


Foreign Keys -

Key Field Name Type Size Constraints

* AVAILABILITY_TYPE_ID Integer 5 Not Null

AVAILABILITY_TYPE Varchar 5 Not Null

Created By : Dharmendra Ambani Do not copy of this report 48


(Your Project Name here)

 Property_Viewing_Request

Table Name Property_Viewing_Request

Description This table is used to maintain and store the


information related to property viewing request.

Primary Keys REQUEST_ID

Foreign Keys -

Key Field Name Type Size Constraints


* REQUEST_ID Integer 5 Not Null

FIRST_NAME Varchar 10 Not Null

LAST_NAME Varchar 10 Not Null

PRIMARTY_TEL_NO Integer 15 Not Null

WORK_TEL_NO Integer 15 Not Null


MOBILE_NO Integer 15 Not Null

EMAIL Varchar 25 Not Null

VIEWING_DATE Date 20 Not Null

Created By : Dharmendra Ambani Do not copy of this report 49


(Your Project Name here)

 Property_Register

Table Name Property_Register

Description This table is used to maintain and store the information


related to property register.

Primary Keys REGISTER_ID

Foreign Keys -

Key Field Name Type Size Constraints

* REGISTER_ID Integer 5 Not Null


NAME Varchar 10 Not Null

TELEPHONE_NO Integer 10 Not Null

EMAIL_ID Varchar 15 Not Null

LOCATION Varchar 15 Not Null

TYPE Varchar 15 Not Null


PROPERTY_TYPE Varchar 25 Not Null

MAX_PRICE Integer 20 Not Null

Created By : Dharmendra Ambani Do not copy of this report 50


(Your Project Name here)

 Contact_Details

Table Name Contact_Details

Description This table is used to maintain and store the information


related to contact details.

Primary Keys -
Foreign Keys -
Key Field Name Type Size Constraints

* NAME Varchar 5 Not Null

ADDRESS Varchar 25 Not Null

LATITUDDE Float 10 Not Null


LONGITUDE Float 10 Not Null

MOBILE_NO Integer 15 Not Null

Created By : Dharmendra Ambani Do not copy of this report 51


(Your Project Name here)

SQLite local Database

 Favourite

Table Name Favourite

Description This table is used to maintain and store the information


related to favourite details.

Primary Keys FAVOURITE_ID

Foreign Keys -

Key Field Name Type Size Constraints


* FAVOURITE_ID Integer 5 Not Null

PROPERTY_ID Integer 5 Not Null

TITLE Varchar 25 Not Null

LOCATION Float 10 Not Null

STATUS Varchar 10 Not Null


BEDROOM_COUNT Integer 3 Not Null

PRICE Integer 8 Not Null

DISTANCE Float 10 Not Null

Created By : Dharmendra Ambani Do not copy of this report 52


(Your Project Name here)

 Recent

Table Name Recent

Description This table is used to maintain and store the information


related to recent details.

Primary Keys RECENT_ID

Foreign Keys -

Key Field Name Type Size Constraints


* RECENT_ID Integer 5 Not Null

TYPE_ID Integer 5 Not Null

MIN_PRICE Integer 15 Not Null

MAX_PRICE Integer 15 Not Null

LOCATION Varchar 10 Not Null


BEDROOMS Integer 3 Not Null

CURRENT_DATE Date 10 Not Null

Created By : Dharmendra Ambani Do not copy of this report 53


(Your Project Name here)

 Main Screen For Searching specific property

Created By : Dharmendra Ambani Do not copy of this report 54


(Your Project Name here)

 Select Minimum price for Buy Property.

Created By : Dharmendra Ambani Do not copy of this report 55


(Your Project Name here)

 Select Maximum price for Buy Property

Created By : Dharmendra Ambani Do not copy of this report 56


(Your Project Name here)

 Select Maximum Bedrooms for Buy Property

Created By : Dharmendra Ambani Do not copy of this report 57


(Your Project Name here)

 Select Location using radius or particular Address

Created By : Dharmendra Ambani Do not copy of this report 58


(Your Project Name here)

 Select Location using Search bar Address

Created By : Dharmendra Ambani Do not copy of this report 59


(Your Project Name here)

 Fill all things and click to search

Created By : Dharmendra Ambani Do not copy of this report 60


(Your Project Name here)

 Display all information which are searched

Created By : Dharmendra Ambani Do not copy of this report 61


(Your Project Name here)

 Display Property with description in Map with location

Created By : Dharmendra Ambani Do not copy of this report 62


(Your Project Name here)

 Display Property with description in Map with location

Created By : Dharmendra Ambani Do not copy of this report 63


(Your Project Name here)

 All Description with photo galary

Created By : Dharmendra Ambani Do not copy of this report 64


(Your Project Name here)

 All Description with photo galary with another usable options

Created By : Dharmendra Ambani Do not copy of this report 65


(Your Project Name here)

 Viewing Request Form

Created By : Dharmendra Ambani Do not copy of this report 66


(Your Project Name here)

 EPC Form

Created By : Dharmendra Ambani Do not copy of this report 67


(Your Project Name here)

 Particular property description send and share with your friend circle

Created By : Dharmendra Ambani Do not copy of this report 68


(Your Project Name here)

 Register screen for registration

Created By : Dharmendra Ambani Do not copy of this report 69


(Your Project Name here)

 Favourite tab display favourite property which you choose.

Created By : Dharmendra Ambani Do not copy of this report 70


(Your Project Name here)

 Delete favourite property and also find with google map

Created By : Dharmendra Ambani Do not copy of this report 71


(Your Project Name here)

 Display all Recent item list which you are searched

Created By : Dharmendra Ambani Do not copy of this report 72


(Your Project Name here)

 Recent view display recently data which you are searched

Created By : Dharmendra Ambani Do not copy of this report 73


(Your Project Name here)

 Calculator view convert and display Amount

Created By : Dharmendra Ambani Do not copy of this report 74


(Your Project Name here)

 Contact to Office

Created By : Dharmendra Ambani Do not copy of this report 75


(Your Project Name here)

7
Testing

Created By : Dharmendra Ambani Do not copy of this report 76


(Your Project Name here)

7.1 TESTING
Testing is one of the important steps in system development. Software Testing also
provides an objective, independent view of the software to allow the business to appreciate and
understand the risks at implementation of the software. Test techniques include, but are not
limited to, the process of executing a program or application with the intent of finding software
bugs.
Software Testing can also be stated as the process of validating and verifying that a
software program/application/product:

i. Meets the business and technical requirements that guided its design and
development;
ii. Works as expected; and
iii. Can be implemented with the same characteristics.

Software Testing, depending on the testing method employed can be implemented at


any time in the development process. However, most of the test effort occurs after the
requirements have been defined and the coding process has been completed. As such, the
methodology of the test is governed by the Software Development methodology adopted.

7.2 TESTING LEVELS


Tests are frequently grouped by where they are added in the software development
process, or by the level of specificity of the test.

7.2.1 Unit Testing


Unit Testing refers to tests that verify the functionality of a specific section of code,
usually at the function level. In an object-oriented environment, this is usually at the class level,
and the minimal unit tests include the constructors and destructors.
These types of tests are usually written by developers as they work on code (white-box
style), to ensure that the specific function is working as expected. One function might have
multiple tests, to catch corner cases or other branches in the code. Unit testing alone cannot
verify the functionality of a piece of software, but rather is used to assure that the building
blocks the software uses work independently of each other.Unit testing is also called
Component Testing.

Created By : Dharmendra Ambani Do not copy of this report 77


(Your Project Name here)

7.2.2 Integration Testing


Integration Testing is any type of software testing that seeks to verify the interfaces
between components against a software design. Software components may be integrated in an
iterative way or all together ("big bang"). Normally the former is considered a better practice
since it allows interface issues to be localized more quickly and fixed.
Integration Testing works to expose defects in the interfaces and interaction between
integrated components (modules). Progressively larger groups of tested software components
corresponding to elements of the architectural design are integrated and tested until the software
works as a system.

7.2.3 System Testing


System Testing tests a completely integrated system to verify that it meets its
requirements.

7.3 TYPES OF TESTING


7.3.1 FUNCTIONAL TESTING
It is an approach to testing where the tests are derived from the program or component
specification. The system is a black box whose behavior can only be determined by studying its
inputs and the related outputs.

7.3.2 STRUCTURAL TESTING


Structural testing is an approach to testing where the tests are derived from knowledge
of the software‘s structure and implementation. This approach is sometimes called ‗white-box
testing‘ to distinguish from black –box testing.

7.4 TEST CASES BASED ON IMPLEMENTATION


The tables following give the number of test cases, which are implemented for invoking
testing the project. The table comprises of
i. Test case ID
ii. Description
iii. Input/Server Controls
iv. Results/Outputs
v. Pass

Created By : Dharmendra Ambani Do not copy of this report 78


(Your Project Name here)

The test case ID gives a unique number identifying the test for each case. Description
describes about the nature of that test. Input is the control that

Created By : Dharmendra Ambani Do not copy of this report 79


(Your Project Name here)

8.
FUTURE WORK

Created By : Dharmendra Ambani Do not copy of this report 80


(Your Project Name here)

 We have done analysis of this entire system till now, and in future we will develop this
system as per our analysis.

 In future this application will became very user-friendly.

 We will covert this web-site into online management so that any user can access our
web-site anywhere through their mobiles.

Created By : Dharmendra Ambani Do not copy of this report 81


(Your Project Name here)

9.
CONCLUSION

Created By : Dharmendra Ambani Do not copy of this report 82


(Your Project Name here)

We have developed “Property Search And Management” in order to overcome the


difficulties in managing the existing manual system. The Application has been designed
effectively keeping in mind, the possible future enhancement and additional functionality; it
has been designed to run in an efficient way.

The Application is designed to be very user-friendly and interactive manner so that the
user cannot find any difficulty while browsing the Application. Thereby the proposed
Application, which is an economically, technically and operationally feasible system has
overcome the deficiency that was present in the manual system. It emphasizes the importance of
timeliness and accuracy that is acquired through automated software.

Created By : Dharmendra Ambani Do not copy of this report 83


(Your Project Name here)

10.
REFERENCES

Created By : Dharmendra Ambani Do not copy of this report 84


(Your Project Name here)

 Websites :

 http://www.apple.com
 http://www.developer.apple.com
 http://www.wikipedia.org
 http://www.stack-overflow.com

 Books:
 Objective-C – From Apple.com
 head_first_iphone_development – Dan Pilone & Tracey Pilone
 Wrox Professional iPhone and iPad Application Development – Gene Backlin

Created By : Dharmendra Ambani Do not copy of this report 85

You might also like