You are on page 1of 61

ACKNOWLEDGEMENT

Perseverance, Inspiration & Motivation have always played a key role in the success of any venture. At this level of understanding it is quite difficult to understand the wide spectrum of knowledge. Without proper guidance and advice making a project during my training period was a difficult task for me. There is always a sense of gratitude which one should express to others for the helpful and needy services that render during all phases of life. We would also like to do so as we readily wish to express our gratitude towards all those who have been helpful to us in getting this mighty task of project to a successful end. First of all we would like to thank the almighty God who has always guided us to work on the right track of oue lives. Next to Him are our parents who have given us full support and guided us to do the best. We specially want to thank Ms. Aarti (Project Guide) under her supervision we completed our project work. Pankaj Saini Rohit Bhardwaj

PREFACE
This project is on Property Site. This report serves the purpose of elaborating the analysis and the implementation phases of the above mentioned project. All the features that have been included in the final implementation have been clearly explained to make the project easy to understand. It has been taken care that this document elicits the system development process in a clear and well documented manner. This course is aimed at making student a complete and self programmer. We are given all the needed knowledge about the structure and the basis of computers at first stage, then study of various business requirements is involved in the last semester as project work. Thus candidate is exposed to real time environment. They have to work in any organization and have to change a manually working system in a computerized system so that they are able to understand the problems arising out of such an environment. In the beginning, we have provided an abstract into the general features of the project. As we proceed we delve into more intricate a detail regarding the working of the project. PHP is the popular scripting /programming language and extremely powerful source for web development known so far.

LIST OF FIGURES
Figure1: Waterfall Model Figure 2: Zero level DFD Figure 3: First Level DFD Figure 4: Control Flow DFD Figure 5: E-R Diagram

LIST OF TABLES
Table 1: Details of individual Table 2: Test Suite

CONTENTS

S.No.
Chapter 1 1.1 1.2 Chapter 2 2.1 Chapter 3 3.1 3.2 3.3 3.4 Chapter 4 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5

Contents
Details of individual Team Structure Development schedule Individual Tasks Performed Individual Tasks Performed Introduction Introduction Objective Problem Definition Brief Description Software Development Life Cycle Introduction Feasibility Study Technical Feasibility Economic Feasibility Operational Feasibility Behavioral Feasibility Feasibility study in perspective of PPR Property.com 16

Page No.
8 8 8 9 9 10-13 10 10 12 13 14-16 14 15 15 15 15 16

Chapter 5

Requirement Analysis and Specification of Project 17 - 19 17 17 18 20-22

5.1 5.2 5.3 Chapter 6

Purpose of SRS Product Definition System Requirements Details of Tools used 4

Chapter 7 7.1 7.2 7.2.1 7.2.2 Chapter 8

Design Design Objective System & Detailed Design System Design Detailed Design Implementation of System Design

23-27 23 24 24 26

28-33 28 31 32 34-49 50-57 50 51 52 54 54 57

8.1 8.2 8.3 Chapter 9 Chapter 10 10.1 10.2 10.3 10.4 10.5 10.5.1

Data Flow Diagrams Control Flow Diagrams Database Description Snapshots of Result Testing and Debugging Software Testing Testing Principles Testing Techniques Testing used in the project Test Cases Test Suite

Chapter 11 11.1

Quality and Reliability Quality and Reliability

58-59 58

Chapter 12 12.1 12.1.1 12.1.2 12.1.3

Maintenance System Maintenance Corrective Maintenance Adaptive Maintenance Perfective Maintenance

60 60 60 60 60

Chapter 13 Chapter 14

User Manual Conclusion and Future Scope

61-62 63-64

14.1 14.2 Chapter 15

Future Scope Limitations Bibliography

63 64 65

CHAPTER - 1 DETAILS OF INDIVIDUALS IN THE PROJECT


TEAM STRUCTURE Team comprises of three members: 1. Our very able and helpful project guide Ms.Aarti. 2. Kartik Chaudhary, Ankur Kaushik,Tejveer Arya students of JMIT. DEVELOPMENT SCHEDULE

Roll no 1208234 1208211

Name Rohit Kumar Pankaj Saini

Role & Responsibilities Core Programmer Database manager & tester

The work in developing the new system commented immediately with our first meeting with the members and guide thereafter we were in continuous touch with each other. Phases involved in the development of the system Identify needs and benefits Held meetings with the guide Studied and identified the existing system Identifying needs and project constraints Established project statements Prepare a detailed report of the existing system at work Prepare the software requirement specifications Actual coding started followed by regular tests .

CHAPTER - 2 INDIVIDUAL TASK PERFORMED


Different modules to be prepared in our project were identified and were worked upon by their respective developers. As our team comprised of three members , our project work was divided accordingly.Some modules required a joint effort. Modules were developed and thereafter tested. Upon integration of modules , testing was performed. Project work was distributed as described under: Member 1: Ms. Aarti (Mentor of the project) She provided a regular assistance in case the implementation got suspended anywhere in the midst of coding due to errors. Her regular guidance has resulted in the desired results. Member 2: Pankaj Saini- Did the database management and testing of the project. Member 3: Rohit Kumar- Worked as a core programmer of the project.

DEVELOPERS RESPONSIBILITY OVERVIEW Our joint responsibilities are:1) 2) 3) 4) Developing the system Installing the software on the clients hardware Conducting any user training that might be needed for using the system Provide support occasionally for maintenance purpose.

CHAPTER - 3 INTRODUCTION
OBJECTIVE This project aims at presenting a very user-friendly interface for property deals.Property owners can post their property details so that the customers can buy property according to their needs. The website is committed to help it's users make wise and profitable decisions relating to buying, selling, renting and leasing of properties in India. Users of the System Guest/Customers. Agents Builders. Administrator.

Guest/Customers Guests can register and and get information about properties available for sale,lease. They can make transactions if they sign in as registered users.

Agents Agents can register as members (through unique IDs) and the registration is confirmed by administration. Agents will have their own profile, where they can edit info for the world to see. Useful updated info related to their activities to be available at their profiles. Registered members(Agents) are allowed to post Information about properties. Different different companies can work as agents.

Builders Builders creates projects and upload there properties information to administrator Builders will send mail to the user for acceptance or rejection of transaction or any query. Builders has all the rights of a user.

Administrator Administrator can add and delete users form the sit. Administrator can add and delete builders/agents.. Administrator can post information about properties which is visible in the homepage of website. Administrator has all the rights.

10

PROBLEM DESCRIPTION

CROSS BROWSER COMPATIBILITY


Cross browser compatibility is the process to make sure that your website is being seen the same way on many different browsers such as Microsoft Explorer, Firefox, Safari, Google Chrome, etc. It may sound strange that your website could look different in a different internet browser, but it can definitely be an issue.

LACK OF SALES FOCUS


This could be one of the greatest areas that is left behind when a user decides to build a website themselves. The lack of knowing and pushing what the website is for has a dramatic impact on whether the website will drive sales or not. The message you are trying to portray to users should happen within the first 10 seconds of the user coming to your web page and at least a phone number and email address where they can get more information are critical to your website producing sales for your company. The sad thing is that we have talked to many decision makers that have said that they have not done business with certain companies because there was not any contact information readily available on their website, so they went to a competitor that did. Keeping the sales goals of the website in mind, whether its to give a phone number, send an email, fill out a form, or inquire today is a key part to having your website be a success for your business.

MORE TO BE DESIRED DESIGN


Many of the design templates that are used today are much better than they were a few years ago, but they can still be a huge pain to users that do not know the nuts and bolts of how the original design was sliced up. This often leads to broken elements on the website, or a graphic that was done in Microsoft Paint that does not match the website theme. These are very subtle touches that visitors can pick up on and decide if your business is a professional organization or not. Notice the choice of words. Visitors will judge the BUSINESS as non professional, not just the website. This key observation will make anyone who is building the website for their business want to take a second look to make sure that all of the pieces look top notch and very professional.

11

BRIEF DESCRIPTION

PPR Property.com promises to be the most preferred way of finding your dream property, and we are committed to help you make a wiser property decision, as a buyer or a seller. We want our esteemed users to realize over time that PPR Property.com is an expert friend, who can help them make some of their biggest and important decisions in life in a sharper, faster and easier way. The PPR Property.com team is committed to the following Understand the needs and concerns of Individuals, Agents & Builders and provide them a common platform for realizing maximum benefits from real-estate Provide a superior real-estate experience by making it easier, faster, secure and more accurate to find buyers for your valuable property, and sellers for the dream property you have been waiting for Give our customers complete control through easy to use interfaces and features that can help them identify, filter and contact potential buyers and sellers for properties

Why the name PPR Property.com?

PPR stands for PAPER. Paper is a versatile material with many uses. Whilst the most common is for writing and printing upon as before a decade we deal real-estate business on papers; the first name that came to our mind was Zameen.com. so we decided to name our property site asPPR Property .

12

CHAPTER - 4 SOFTWARE DEVELOPMENT LIFECYCLE

INTRODUCTION
The systems development life cycle (SDLC), or software development life cycle in systems

engineering, information systems and software engineering, is a process of creating or altering information systems, and the models and methodologies that people use to develop these systems. In software engineering the SDLC concept underpins many kinds of software development methodologies. These methodologies form the framework for planning and controlling the creation of an information system.

System Development Life Cycle (SDLC) is the overall process of developing information systems through a multi-step process from investigation of initial requirements through analysis, design, implementation and maintenance. There are many different models and methodologies, but each generally consists of a series of defined steps or stages. The Software Development Life Cycle (SDLC) is the entire process of formal, logical steps taken to develop a software product. The SDLC model used here is Iterative Waterfall Model. ITERATIVE WATER FALL MODEL The system Development life cycle method is classically thought of as a set of activities that analysis, designers and users carry out and develop and implement the system. The main

13

Fig : 1

activities those are included in this approach are as follows. FEASIBILTY STUDY The feasibility study of any system is mainly intended to study and analyze the proposed system and to decide whether the system under consideration will be viable or not after implementation i.e. it determines the usability of the project after deployment. To come to result a set of query is answered keeping the efficiency of the software and its impact on the domain for which it was developed. Its main emphasis is on the following three questions elucidated below as: What are the users requirements and how does a candidate system meet them? What recourses are available for the proposed system? Is it worth solving the problem? What is the likely impact of the proposed system on the organization? i.e. how does the proposed system fit within the organization? Thus since the feasibility study may lead to commitment of large resources, it becomes necessary that it should be conducted competently and no fundamental errors of judgment are made. Economic Feasibility Economic feasibility is the most frequently used technique for evaluating the effectiveness of the proposed system. More commonly known as cost/benefit analysis, the procedure is to determine the benefits and savings that are expected from the proposed system and compare them with the costs. If the benefits outweigh costs, a decision is taken to design and implement the system otherwise further justification or the alternative in the proposed system will have to be made if it is to have a chance of being approved. This outgoing effort improves in accuracy at each phase of the system development life cycle. The product should be economical. The system PPR Property.com is not too much costly. It is easily affordable by an organization. Thus it is economically feasible.

14

Technical Feasibility A system is said to be technically feasible if either there exists the required technology or the company is willing to go for the technology after the Cost & Benefit analysis is done and the necessary technology exists. A project is also said technically feasible if further development of the software is possible. So far as this project is concerned, it has been developed using PHP as a front end. The user will find the same ease in operating the software as if they were operating the familiar Microsoft Windows based any other application. Further, the use of mysql reduces most of the data maintenance activities like, inconsistencies in data, taking backups. The product is technically feasible. It will not require specialized people to operate upon. It has friendly interface and a short training is the main requirement to use this system. Behavioral Feasibility In the behavioral feasibility study we focus on various points which are as follows :

Is the audience likely to adopt the behavior? Is the current behavior seen as a problem? How engrained or rewarding are the current or competing behaviors?

How costly is it (time, effort, resources) for the audience segment to perform the behavior?

How complex is the behavior (does it involve few or several elements)? How frequently must the behavior be performed?

Now a days people dont have enough time to go and buy properties as they needs so our Property site is developed in such a way that it is user friendly, Advantage of PPR Property.com An expert friend PPR Property.com is an expert friend, who helps the user make wise property decisions. We strongly believe that once our users start using PPR Property.com, they will realize over time that this is indeed a much better way to search for, and advertise properties, not only as compared to other online portals, but also when compared to the traditional print classifieds. Easy to use PPR Property.com has been made keeping the user in mind. We do not want you to come
15

to our website and get lost within all the information that exists. We have incorporated advanced search functionalities, which help you find the information that you need, in a much more accurate way, and in the least possible time. Visually appealing PPR Property.com has been designed keeping the usability in mind. We have taken great pains to conduct usability studies, and we strongly believe that PPR Property.com will appeal to users of all ages, across geographies. We have incorporated a number of design elements, which will leave you pleasantly surprised, once you start using our services.

About Project From the feasibility point of view our project Property site is fully feasible. We made this project in PHP technology and PhpMyAdmin (phpMyAdmin is an open source tool written in PHP intended to handle the administration of MySQL with the use of a Web browser. It can perform various tasks such as creating, modifying or deleting databases, tables, fields or rows; executing SQL statements; or managing users and permissions.) as a database management system and WAMP as a web server. All these things are easily available. So, our project is feasible from technical, economical as well as behavioral point of view.

16

CHAPTER - 5 SOFTWARE REQIUREMENT ANALYSIS AND SPECIFICATIONS


PURPOSE OF SRS The software requirement specification is produced at the culmination of the analysis task. The function and performance allocated to software as part of system engineering are refined by establishing a complete information description, a detailed functional description, a representation of system behavior, an indication of performance requirement and design constraints appropriate validation criteria, and other information pertinent to requirement. The introduction to software requirements specification states the goals and objectives of the software, describing it in the context of the computer based system. The Information Description provides a detailed description of the problem that the software must solve. Information content, flow and structure are documented. A description of each function required to solve the problem is presented in the Functional Description. Validation Criteria is probably the most important and ironically the most often neglected section of the software requirement specification. Software requirement specification can be used for different purpose. The various purpose of SRS is as follows To provide an unambiguous and complete statement of functionality provided by the system. To clearly define boundaries of the system. To establish linkage with other modules and external environment. To define complete data flow of the system. To identify inputs and outputs of the system. To provide the basis for the preparation of the system design description.

PRODUCT DEFINITION

17

Product definition is a critical point in the development of any new product. Yet for its importance there are a number of shortcomings to the process of product definition in many companies

No defined product strategy or product plan Lack of formal requirements as a basis for initiating product development Product requirements developed without true customer input

In our project PPR PROPERTY.COM we give product definition by considering various points such as What is product plan or product strategy What are customers requirements , by capturing the voice of customers

As in case of our project the basic need of any person using our site is to post articles, read articles, comments on others articles, enter into a discussion over an article.

SYSTEM REQUIREMENTS In order to run this web application of PPR PROPERTY.COM, the computer must meet the following hardware and software requirements : Hardware Requirements Minimum Hardware Configuration

Processor: 500 MHz Intel Pentium III workstation or equivalent Memory: 384 megabytes Disk space: 125 megabytes of free disk space

Recommended Hardware Configuration

18

Processor: 780 MHz Intel Pentium III workstation or equivalent Memory: 512 megabytes Disk space: 125 megabytes of free disk space

19

Software Requirements Operating System Windows/Linux Operating System Web Server WAMP/LAMP Platform used PHP Database PhpMyAdmin Web Browser Mozilla Firefox 7.0 , Internet Explorer 9(Windows), Google Chrome Designing Tool Dreamweaver

20

CHAPTER - 6 DETAILS OF SOFTWARE TOOLS USED WAMP (Windows,Apache,MySQL,PHP/Perl/Python)

WAMP is a form of mini-server that can run on almost any Windows Operating System. WAMP includes Apache 2, PHP 5 (SMTP ports are disabled), and MySQL (phpMyAdmin and SQLitemanager are installed to manage your databases) preinstalled. An icon on the taskbar tray displays the status of WAMP, letting you know if; a) WAMP is running but no services are opened (the icon will appear red), b) WAMP is running and one service is opened (the icon will appear yellow) or c) WAMP is running with all services opened (the icon will appear white). Apache and MySQL are considered to be services (they can be disabled by left-clicking on the taskbar icon, guiding your cursor over the service you wish to disable and selecting "Stop Service")

WAMP is a Windows OS based program that installs and configures Apache web server, MySQL database server, PHP scripting language, phpMyAdmin (to manage MySQL databases), and SQLiteManager (to manage SQLite databases). WAMP is designed to offer an easy way to install Apache, PHP and MySQL package with an easy to use installation program instead of having to install and configure everything yourself. MySQL MySQL is a relational database management system (RDBMS) that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My. The SQL phrase stands for Structured Query Language.

21

The MySQL development project has made its source code available under the terms of the GNU General Public License, as well as under a variety of proprietary agreements. MySQL was owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, now owned by Oracle Corporation. Many programming languages with language-specific APIs include libraries for accessing

MySQL databases. These include MySQL Connector/Net for integration with Microsoft's Visual Studio (languages such as C# and VB are most commonly used) and the JDBC driver for Java. In addition, an ODBC interface called MyODBC allows additional programming languages that support the ODBC interface to communicate with a MySQL database, such

as ASP or ColdFusion. The HTSQL - URL based query method also ships with a MySQL adapter, allowing direct interaction between a MySQL database and any web client via structured URLs. The MySQL server and official libraries are mostly implemented in ANSI C/ANSI C++.
DREAMWEAVER

Adobe

Dreamweaver (formerly Macromedia

Dreamweaver)

is

a proprietary web

development application originally created by Macromedia, and is now developed by Adobe Systems, which acquired Macromedia in 2005. Dreamweaver is available for both Mac and Windows operating systems. Recent versions have incorporated support for web technologies such as CSS, JavaScript, and various server-side scripting languages and frameworks including ASP, ColdFusion, and PHP. Adobe Dreamweaver is a proprietary web authoring application that allows users to preview websites natively in a preview pane or in locally installed web browsers. It provides transfer and synchronization features, the ability to find and replace lines of text or code by search terms and regular expressions across the entire site, and a templating feature that allows single-source update of shared code and layout across entire sites without server-side includes or scripting. The behaviours panel also enables use of basic JavaScript without any coding knowledge, and integration with Adobe's Spry Ajax framework offers easy access to dynamically-generated content and interfaces.

22

Dreamweaver can use third-party "Extensions" to extend core functionality of the application, which any web developer can write (largely in HTML and JavaScript). Dreamweaver is supported by a large community of extension developers who make extensions available (both commercial and free) for most web development tasks from simple rollover effects to fullfeatured shopping carts.

23

24

CHAPTER - 7 DESIGN
The design of system produces the details that state how a system will meet the requirements identified during System analysis. This is often referred to as logical design stage. This phase diverts focus from the problem domain to the solution domain. It acts as a bridge between the requirement phase and its solution. The design phase focuses on the detailed implementation of the system recommended in the feasibility study. Emphasis is on translating performance specification into design specifications. System Design goes through two phases of development. High Level Design Low Level Design

High Level Design: In this phase team will decide how the application will function. The formats of data input and output are finalized in this stage. The functional specifications documentation of their application is presented in a language that can be understood by all. The finalized project design is executed only on the project managers approval. In this phase the input requirements collected from the above phase is refined. Low Level Design: In this phase, a detailed design of the software modules based on the highlevel design is created. In addition the team creates specifications for the various software modules of an application. DESIGN OBJECTIVES ABOUT PROJECT Design Objective assists companies better understand their customers and clients to reduce development and operating costs , expose unexplored opportunities and leap-frog the competition through strategic advantage. Design Objective applies Human Centered Design methods iteratively to gain key valuable, tangible and actionable insights from users' needs and promote them from within your strategy, marketing, technology, design and support teams. Our methods take their relevancy from your
25

users, whether you are developing a product, software or service.

SYSTEM AND DETAILED DESIGN The purpose of this phase is to plan a solution for the problem specified by the requirement document. This is first step in moving from the problem domain to solution domain. Designing activity is divided into two parts. a) System Design It aims to identify the modules that should be in the system, the specification of these modules and how they interact with each other to produce the desired result. b) Detailed Design The internal goal of each of the modules specified in the system design is decided.

System Design System design provides the understandings and procedural details necessary for implementing the system recommended in the system study. Emphasis is on the translating the performance requirements into design specifications. The design phase is a transition from a user-oriented document (System proposal) to a document oriented to the programmers or database personnel. System design goes through two phases of development: 1) Logical Design 2) Physical Design A data flow diagram shows the logical flow of the system. For a system it describes the input (source), output (destination), database (data stores) and procedures (data flows) all in a format that meets the users requirement. When analysis prepare the logical system design, t hey specify the user needs at a level of detail that virtually determines the information flow into an out of the system and the required data resources. The logical design also specifies input forms and screen layouts.
26

The activities following logical design are the procedure followed in the physical design e.g., producing programs, software, file and a working system. Design specifications instruct the user about what the system should do. Logical and Output Design: The logical design of an information system is analogous to an engineering blue print of an automobile. It shows the major features and how they are related to one another. The detailed specification for the new system was drawn on the bases of users requirement data. The outputs inputs and databases are designed in this phase. Output design is one of the most important features of the information system. When the outputs is not of good quality the users will be averse to use the newly designed system and may not use the system. There are many types of output, all of which can be either highly useful or can be critical to the users, depending on the manner and degree to which they are used. Outputs from computer system are required primarily to communicate the results of processing to users, They are also used to provide a permanent hard copy of these results for later consultation. Various types of outputs required can be listed as below: External Outputs, whose destination is outside the organization Internal outputs, whose destination is with the organization Operational outputs, whose use is purely with in the computer department e.g., program-listing etc. Interactive outputs, which involve the user is communicating directly with the computer, It is particularly important to consider human factor when designing computer outputs. End user must find outputs easy to use and useful to their jobs, Without quality output, user may find the entire system unnecessary and avoid using it. The term Output in any information system may apply to either printer or displayed information. During the designing the output for this system, it was taken into consideration, whether the information to be presented in the form of query of report or to create documents etc.

27

Other important factors that were taken into consideration are: The End user who will use the output. The actual usage of the planned information The information that is necessary for presentation When and how often output and their format is needed. While designing output for project based Attendance Compilation System, the following aspects of outputs designing were taken into consideration. The outputs (i.e., well formatted table outputs in the screen itself) designed are simple to read and interpret. Format of each output was another important point taken into consideration. Output media, for each output appropriate media is decided whether it will be displayed on screen or will be taken to printer or both. Other output design related specifications, i.e., how frequently the outputs will be generated, how many pages or sheets approximately it will keep up, what is its planned use and output distribution to users are also taken into account. These were a few major designing issues, which were taken into consideration, while deciding the output specifications for the system. As direct beneficiary of reports is the user community, they were consulted constantly at every level. Formats and screen design for various reports were identified, taking into account the user requirements. Before finalising these were given to users for any improvement and suggestions. End users issues taken into consideration were Readability, Relevance and Acceptability.

Detailed Design Detail design is the process of design of internals of individual system which includes various things like 1) Deciding on Data Structure 2) Classes
28

3) Algorithms 4) Procedures To Be Used The process can be conceptualized in such a way to keep the methodology of main module process along with some auxiliary task, which will run concurrently with the main program. The top-down approach is maintained so as to keep track of the process, which satisfies the maintenance reliability testing requirements. The concurrency of the data is checked during data entry, by means of validation check for data in each field. The process of code is to facilitate the identification and retrieve of items of information. The code should be simple and easy to understandable. The codes were designed in such a way that the features such as optimum human oriented use and machine efficiency are unaffected. For the code to be designed effectively, the following characteristics were also considered while designing the code. Uniqueness Versatility Stability Simplicity Consciousness

The code should be adequate for present and anticipated data processing for machine and human use. Care was taken to minimize the clerical effort and computer time required to continue operation.

29

CHAPTER - 8 IMPLEMENTATION OF SYSTEM DESIGN


DATA FLOW DIAGRAMS The data flow diagram is the graphical representation that depicts information flow and transforms that are applied as data move from input to output. The data flow diagram is analogous to a road map. It is a network model of all possibilities

with different detail shown on different hierarchical levels. The process representing different details level is called leveling or portioning by some data flow diagram advocated. Like a road map, there is no start or stop point, no timeout timing or steps to get somewhere. We just know that the data path must exist because at some point it will be needed. A road map shows all existing or planned roads because the roads are needed. Details that are not shown on the different levels of the data flow diagram such as volumes, timing, frequency etc is shown on supplementary diagrams or in the data dictionary. For example, data store contents may be shown in the data dictionary. OBJECTIVE: Graphical eliminating thousands of words. Logical representing, modeling what a system does, rather that physical models showing how it does it. Hierarchal, showing system at any level of detail Jargon less, allowing user understanding and reviewing.

The goal of data flow diagramming is to have a commonly understood model of a system. The diagram are supposed by other techniques of structured system analysis such as data structure diagrams, data dictionaries and procedure representing techniques such as decision tables, decision trees and structured English. The Data Flow Diagrams for PPR Property.com are :

30

Zero Level DFD

Admin

Builder

Property site

Registered Users

Agents

Fig : 2

31

First Level DFD


Manage Requirements
Registered Users Login

PPR property.com

Manage Properties articles

Manage Requirements

My Details

Add Propert y

Login

Edit

Add

Edit

View

Administrator

Login

Fig : 3
Administrat or

32

CONTROL FLOW CHART A flowchart is a type of diagram that represents an algorithm or process, showing the steps as boxes of various kinds, and their order by connecting these with arrows. This diagrammatic representation can give a step-by-step solution to a given problem. Process operations are represented in these boxes, and arrows connecting them represent flow of control. Data flows are not typically represented in a flowchart, in contrast with data flow diagrams; rather, they are implied by the sequencing of operations. Flowcharts are used in analyzing, designing, documenting or managing a process or program in various fields. The control flow chart with respect to registered user is as follows :

Start

Enter Username and Password

Login authentication

Fails

Fig : 4
Pass

Perform User Operations

Stop

33

DATABASE DESCRIPTION In our project PPR Property.com database play a very major role. All the articles posted by teachers or students are added to the database. All the comments are also added to the tables of their corresponding articles. Also users database is maintained for the authentication of registered users. MySQL has been used as a backend for our project to manage the database. The tables used in our project Property Site are as follows: property_admin: store all the registration details of the administrators property_user: which store all the registration details of the registered users. magic_property_broker_agent : which store all the registration details of the registered

In order to describe our databases, we use Screenshot as follows:

34

Entity Relationship Diagrams The Entity Relationship Diagram (ERD) is the graphical notation of the relationship between data object and attributes. The ERD was originally proposed by Peter Chen for the design of relational database systems and has been extended by others. Primary components identified for ERD are: Data objects Attributes Relationship Various type indicators. Purpose of ERD The primary purpose of the ERD is to represent data objects and their relationship. ER Diagram

35

Fig : 5

36

CHAPTER - 9 SNAPSHOTS
Home page

Login page

37

User Information

Post Property

38

Post Requirements

Register new user

39

Forgot password

Password retrieved

40

Agent Search

Builder search

41

Search Property

Quick Search

42

Search By id

Edit User information

43

Requirements Successfully Posted

Property Successfully Posted

44

CHAPTER - 10 TESTING AND DEBUGGING During this phase each module is unit tested to determine the correct working of all individual modules. It involves testing each module in isolation as this is the most efficient way to debug the errors identified at this stage. After being individually tested the different modules are partially integrated and then tested. Finally when all the modules get integrated and tested, system testing is carried out. The goal of the system testing is to ensure that the developed system confirms to its requirements laid out in SRS document. Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece ofelectronic hardware, thus making it behave as expected. This project has been developed after following the approach of dividing into sections and each section is tested individually in order to find out whether all the links are working properly or not. This way all the modules are tested individually and later these all sections are linked together to form a complete project. Basically the testing is done keeping in view the following aims: 1) Logic of all the programs is corrected individually. 2) All the statements of software are checked. 3) Each and every section is working separately according to requirements. Hence by using the above said approach followed the errors resulted from coding is then being debugged by changing the code, referring to the books for that error and getting help from our project guide. TESTING PRINCIPLES All tests should be traceable to customer requirements. Test should be planned long before testing begins. Do not plan a testing effort under the tacit assumption that no errors will be found. Testing should begin in small and progress towards in the large. A necessary part of the test case is the definition of the expected result.
45

Write test cases for invalid and unexpected as well as valid and expected input conditions. Thoroughly inspect the results of each test. Examining a program to see if it does not do what it is supposed to do is only half the

battle; the other half is checking whether program does what it is not supposed to do. Tools should be used wherever possible to improve productivity and to gain better control of testing environment TESTING TECHNIQUES There are two techniques of testing Black Box Testing. White Box Testing.

Black Box Testing An approach to testing where the program is considered as a Black-box also known as Functional Testing as Black Box Testing focuses on functional specifications of software without any knowledge of internal structure of software. Objective: The objective of Black box testing is to ensure about that software is Functioning correctly. Black box testing attempts to finding errors in the following categories: Incorrect or missing function. Interface errors. Errors in data structures or external database access. Behaviour or performance errors. Initialisations and termination errors.

46

White Box Testing An approach to testing where the program is considered as White-Box also known as Structure Testing as this testing requires through knowledge of internal structure of the software. Objective: The objective of White box testing is to exercise all program statements. Using white-box testing methods, the software engineer can derive test cases that: Guarantee that all independent paths within a module have been exercised at least once. Exercise all logical decisions on their true and false sides. Execute all loops at their boundaries and within their operational bounds. Exercise internal data structures to ensure their validity.

UNIT TESTING Unit testing is White-Box oriented. This testing approach uses the component-level design description as a guide; important control paths are tested to uncover errors within the boundary of the module. Objective: The objective is to test a unit of code (program or set of programs) using the unit test specifications, after coding is completed. The simplest approach is to ensure that every statement is exercised at least once.

INTEGRATION TESTING Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncovers errors associated with interfacing. Objective:

47

The objective is to prove that the various programs making up the system are compatible, fit together and the interfaces between the programs are correct. After different modules of a system have been coded and unit tested: Modules are integrated in steps according to an integration plan Partially integrated system is tested at each integration step.

48

SYSTEM TESTING System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic. System testing is performed on the entire system in the context of a Functional Requirement Specification(s) (FRS) and/or a System Requirement Specification (SRS). System testing tests not only the design, but also the behaviour and even the believed expectations of the customer. ACCEPTANCE TESTING Acceptance testing is black-box testing performed on a system (for example: a piece of software, lots of manufactured mechanical parts, or batches of chemical products) prior to its delivery. It is also known as functional testing, black-box testing, QA testing, application testing, confidence testing, final testing, validation testing, or factory acceptance testing. Software developers often distinguish acceptance testing by the system provider from acceptance testing by the customer (the user or client) prior to accepting transfer of ownership. In the case of software, acceptance testing performed by the customer is known as user acceptance testing (UAT), end-user testing, site (acceptance) testing, or field (acceptance) testing. Acceptance testing generally involves running a suite of tests on the completed system. Each individual test, known as a case, exercises a particular operating condition of the user's environment or feature of the system, and will result in a pass or fail, or boolean, outcome. TESTING USED IN PROJECT Testing is very essential phase of the software development lifecyle. This must be performed in order to ensure the proper working of our product. We have used different type of testing to ensure the proper working of our project PPR PROPERTY.COM which are as follows:

49

Unit Testing: All the modules in our project were tested individually. Modules like discussion module, posting module, registration module all were tested individually. Each and every line of the code was tested. Integration Testing: After the successful completion of unit testing, integration testing was performed. All the modules were integrated one by one and tested simaultaneously. All the integrated modules were running successfully. System Testing: System testing is conducted after the integration testing. System is tested as a whole. Even though the modules were tested individually, there is a need for system testing as after integration some inputs and outputs conflict with each other to produce an error. Thus, system testing ensures the proper working of the final product. TEST CASES A test case in software engineering is a set of conditions or variables under which a tester will determine whether an application or software system is working correctly or not. The mechanism for determining whether a software program or system has passed or failed such a test is known as a test oracle. A test case is usually a single step, or occasionally a sequence of steps, to test the correct behaviour/functionalities, features of an application. An expected result or expected outcome is usually given. Additional information that may be included:

test case ID test case description test step or order of execution number related requirement(s) author

Additional fields that may be included and completed when the tests are executed:

pass/fail remarks
50

The test cases in our project are as follows : Test case id Login01 Test case name Validate Login Test case description To verify that Login name on login page must be in proper format Test steps Step Enter login name with improper user id and password and click Submit button Rename login name, give empty password and click Submit button Login02 Validate Login To verify that Login name on login page does not take special characters Enter login name starting with specail chars (!hello) password and click Submit button enter login name ending with specail chars (hello$) password and click Submit button expected an error message Invalid username actual Test Status (P/F) Test Priority high

an error pass message Invalid username

an error message Invalid username

an error pass message Invalid username

high

an error message Invalid username

an error pass message Invalid username

high

an error message Invalid username

an error pass message Invalid username

high

51

enter login name with specail chars in middle(he&^ llo) password and click Submit button Pwd01 Validate Password To verify Enter wrong that Password Password on login page must be less than 10 characters To verify that Password on login page must be allowed special characters enter Password with special characters(sa y !@hi&*P) Login Name and click Submit button Click Home Link

an error message Invalid username

an error pass message Invalid username

high

an error message Invalid Password

an error pass message Invalid Password

high

Pwd02

Validate Password

an error message Invalid Password

high

URL01

To check the security of the system

To Verify that the url of the post entered directly without login opens the page or not

Home Page must be displayed Page must not be displayed

Pass

low

Type the url for post page

Pass

low

Click Home Page

Home page must be displayed

Pass

low

52

Click login page and enter login details

Login page must be displayed and login must be successful Post page must be displayed and article must be posted successully

Pass

low

Click on post tab

Pass

low

Table : 2

53

CHAPTER - 11 QUALITY AND RELIABILITY


QUALITY In the context of software engineering, software quality refers to two related but distinct notions that exist wherever quality is defined in a business context:

Software functional quality reflects how well it complies with or conforms to a given design, based on functional requirements or specifications. That attribute can also be described as the fitness for purpose of a piece of software or how it compares to competitors in the marketplace as a worthwhile product;

Software structural quality refers to how it meets non-functional requirements that support the delivery of the functional requirements, such as robustness or maintainability, the degree to which the software was produced correctly.

Structural quality is evaluated through the analysis of the software inner structure, its source code, in effect how its architecture adheres to sound principles of software architecture. In contrast, functional quality is typically enforced and measured through software testing. RELIABILITY Software Reliability is the probability of failure-free software operation for a specified period of time in a specified environment. Software Reliability is also an important factor affecting system reliability. It differs from hardware reliability in that it reflects the design perfection, rather than manufacturing perfection. The high complexity of software is the major contributing factor of Software Reliability problems. Software Reliability is not a function of time - although researchers have come up with models relating the two. The modeling technique for Software Reliability is reaching its prosperity, but before using the technique, we must carefully select the appropriate model that can best suit our case. Measurement in software is still in its infancy. No good quantitative methods have been developed to represent Software Reliability without excessive limitations. Various approaches can be used to improve the reliability of software, however, it is hard to balance development time and budget with software reliability.
54

Assessing reliability requires checks of at least the following software engineering best practices and technical attributes:

Application Architecture Practices Coding Practices Complexity of algorithms Complexity of programming practices Compliance with Object-Oriented and Structured Programming best practices (when applicable)

Component or pattern re-use ratio

55

CHAPTER - 12 MAINTENANCE
Software maintenance in software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes. This section describes the six software maintenance processes as: 1. The implementation processes contains software preparation and transition activities, such as the conception and creation of the maintenance plan, the preparation for handling problems identified during development, and the follow-up on product configuration management. 2. The problem and modification analysis process, which is executed once the application has become the responsibility of the maintenance group. The maintenance programmer must analyze each request, confirm it (by reproducing the situation) and check its validity, investigate it and propose a solution, document the request and the solution proposal, and, finally, obtain all the required authorizations to apply the modifications. 3. The process considering the implementation of the modification itself. 4. The process acceptance of the modification, by confirming the modified work with the individual who submitted the request in order to make sure the modification provided a solution. 5. The migration process (platform migration, for example) is exceptional, and is not part of daily maintenance tasks. 6. Finally, the last maintenance process, also an event which does not occur on a daily basis, is the retirement of a piece of software. TYPES OF MAINTENANCE Corrective Maintenance: It means repairing, processing or performing failures or making alterations because of previously ill defined problems. Perfective Maintenance: It involves improving the implementation of the system and enhancing the functionalities of the system according to the customers requirements. Adaptive Maintenance: Porting the software to work in a new environment.

56

CHAPTER - 13 USER MANUAL

Server Manual Setting up Internet Information Server Insert the Window XP sp2 CD in CD Rom/RAM. Open Control Panel from start menu. Double click on Add/Remove Program icon. Click on Add Windows component. Select the check box in front of Internet Information Services specified in the list. Click on the install at the bottom of wizard. This will install Internet Information Server.

Installing PHP Run the set up of PHP platform for window xp 32 bit and for window 7 64 bit

On Client side Start up Boot the windows System Make connection to the internet or the administrators network depending on whether you are working on a internet or on intranet. Installing Web Browser Web Browser are built in Operating systems such as windows(Internet Explorer). User can install another web browsers which support the HTML various version Installation is done by simply double clicking on the setup icon.
57

Using application Enter the domain address or IP address in the box provided in the internet explorer to do so. The web address include the address of server on which the application is installed. Enter clients UserName and Password .

This will provide access to clients account and User controls provided to the client.

58

CHAPTER - 14 FUTURE SCOPE


Everything which we make is not perfect. In any project, especially in the project of computer science, there is always a scope of enhancement. One can make a system a bit better. Like any other system this system also has a scope of further enhancement. This project is basically a web based application. It is very efficient and easier to implement technique. The future of this project is very shining and bright. PPR Property.com is a college-guide website and quarterly magazine written and edited by college students and teachers. Both site and magazine features are incorporated into one. It is an outlet for the creative talents of the Students. The magazine showcases the literary, cultural, sports activities and achievements of the students.

In future, PPR Property.com can be helpful for the students of a college to express their creativity and also take part in healthy discussion with other students on various topics. Also people of outside world can browse through the college magazine to know the intelligence and creativity levels of the college students. The system has been developed for the given condition and is found working effectively. The developed system is flexible to changes and can be made easily whenever required.

59

LIMITATIONS
PPR Property.com has an advantage over traditional way of printing of college magazines. This is a dynamic way for students and teachers to post their views in the magazine. But this also suffers from a limitation of manual verification of students and teachers. To validate a student that it is a student of this only college, initially he has to register to the website and then get a unique registration number from the admin of the magazine personally. He then has to login with this unique number in order to get the authority to post the articles or get into the discussion with the author of any other article. There is no other way to validate the user. Thus our project suffers from this only limitation.

Hardware Limitations
The server for this system should have a processor with good processing speed so that it can handle multiple requests at a time. Should have good storage capacity so that it can store the images, documents and schedule.

Software Limitations
Since PPR Property.com is a web application, compatibility issues may be faced among different
browsers.

To avoid unintended behavior of the browsers it is proposed to use Mozilla and Internet Explorer as web browser.

60

CHAPTER - 15 BIBLIOGRAPHY
BOOKS Complete Reference of PHP Complete Reference of HTML/CSS Software Engineering by Pankaj Jhalote

WEBSITES

http://www.google.com http://www.wikipedia.org http://www.w w3schools.com

61

You might also like