0% found this document useful (0 votes)
104 views68 pages

Projet Report

This document analyzes the feasibility of developing a social networking site system. It discusses the technical, operational, and economic feasibility. The technical feasibility examines if the necessary technology exists and if the system can handle the required data and meet response requirements. The operational feasibility considers user support and resistance. The economic feasibility analyzes the costs and benefits of developing the system versus alternative solutions. The proposed system was found to be feasible after considering these factors.

Uploaded by

MG
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
104 views68 pages

Projet Report

This document analyzes the feasibility of developing a social networking site system. It discusses the technical, operational, and economic feasibility. The technical feasibility examines if the necessary technology exists and if the system can handle the required data and meet response requirements. The operational feasibility considers user support and resistance. The economic feasibility analyzes the costs and benefits of developing the system versus alternative solutions. The proposed system was found to be feasible after considering these factors.

Uploaded by

MG
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 68

C-link social networking site

CHAPTER
Chapter 1
1.1
1.2
1.3
1.4
1.5
Chapter 2
2.1
2.2
Chapter
3.1
3.2
Chapter
4.1
4.2
4.3
Chapter
Chapter
6.1
6.2
6.3
6.4
6.5
Chapter
Chapter
8.1

5
6

7
8

DESCRIPTION
Introduction
Introduction
Objectives of the project
Existing System
Proposed System
Description of the project
Software Requirement
Specification
tools and environment user
Hardware / software specification
Analyse document
System study and analysis
System requirements
Design specification
Modular design
System Design
Database Design
Coding
Testing
System testing
Unit testing
Integrity testing
Validation testing
Test case
Screen Layouts
Conclusions
Conclusion
Bibliography

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

PAGE NO.
2
3
4
4
4
4
5
6
8
9
10
12
20
21
21
32
35
47
48
53
53
53
55
55
61
62
62

Page 1

C-link social networking site

CHAPTER:1

INTRODUCTION

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 2

C-link social networking site


1.1 INTRODUCTION
Social Networking - It's the way the 21st century communicates now. Social
networking is the grouping of individuals into specific groups, like small rural
communities or a neighborhood subdivision. Although social networking is
possible in person, especially in the workplace, universities, and high schools, it is
most popular online. This is because unlike most high schools, colleges, or
workplaces, the internet is filled with millions of individuals who are looking to
meet other people. Social Networking Website project itself is a huge project
comprising various features like profile updating, friends list organization and
various other applications to enhance the overall look and feel of the website.
Social network is the mapping and measuring of relationships and flows between
people, groups, organizations, computers, URLs, and other connected
information/knowledge entities. The nodes in the network are the people and
groups while the links show relationships or flows between the nodes. Social
network provides both a visual and a mathematical analysis of human
relationships.

1.2 OBJECTIVE OF THE PROJECT

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 3

C-link social networking site


The main objective of this project is to develop a social network website by which
people will be able to talk each other, exchange information and get some help. By
realizing this project we implement our knowledge.

1.3 EXISTING SYSTEM


The rst recognizable social network site launched in 1997 which is
SixDegrees.com allowed users to create proles, list their Friends and, beginning
in 1998, surf the Friends lists. Since that time, many other social network sites
have been developed. Today we have the most used which are Facebook, Twitter,
LinkedIn ... by which users can communicate share photos and videos, give
information and their own opinion.

1.4 PROPOSED SYSTEM


This type of project is not new at all; many people have already realized this kind
of project. Indeed our project will bring some new concept such as, an in-build
chat group which means that in addition to a private chat all users whom are
friends will be able to directly communicate in a public chat room.
The user will be able to make multiple calling and send files other than photo or
video.

1.5 SYSTEM DESCRIPTION


This system provides the users to create an account.
This system provides users to send a message, images, and data files to their
friends
This system provides the user to maintain their friend list and user can
update their friend list
This system provides user to send invitation to another friend and can add to
their friend list for future.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 4

C-link social networking site

CHAPTER:2

SOFTWARE
REQUIREMENT
SPECIFICATION

2.1 TOOLS AND ENVIRONMENT USER

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 5

C-link social networking site


To realize this project we had used PHP, HTML, JAVASCRIPT, APACHE and
MYSQL.
For the front end we used HTML, PHP and JAVASCRIPT (AJAX, JQUERY), for
the backend we used MYSQL for the database an APACHE for the server.
Front end
HTML5: Hypertext Markup Language version 5 is the latest version
of HTML. It is the combination of HTML and JavaScript. HTML5 is
a authoring language used to build a web page with many more
features comparing to the previous version which is XHTML. As
features we have Video elements, application cache, canvas for
images, geolocation API, web storage, local storage etc.
JAVASCRIPT: It is a cross-platform object based scripting language
invented specially for using on web browser to make website more
dynamic and attractive. It is mainly used as a client side scripting
language.
It gives the user more control over the browser, it is used to handle
time and date, to validate forms, performing calculation on the client
side etc.
CSS: CSS stands for Cascading Style Sheets, it
Defines how HTML elements have to be displayed
Styles were added to HTML 4.0 to solve a problem
CSS saves a lot of work
External Style Sheets are stored in CSS files

Back end

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 6

C-link social networking site


PHP: It is a server scripting language, and a powerful tool for
making dynamic and interactive Web pages.
PHP is an acronym for "PHP: Hypertext Preprocessor"
PHP is a widely-used, open source scripting language
PHP scripts are executed on the server
PHP is free to download and use
PHP files can contain text, HTML, CSS, JavaScript, and PHP code.
PHP code are executed on the server, and the result is returned
to the browser as plain HTML
PHP files have extension ".php"
PHP runs on various platforms (Windows, Linux, Unix, Mac OS X,
etc.)
PHP is compatible with almost all servers used today (Apache, IIS,
etc.)
PHP supports 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.
AJAX: It is about updating parts of a web page, without reloading the
whole page.
AJAX = Asynchronous JavaScript and XML.
AJAX is a technique for creating fast and dynamic web pages.
AJAX allows web pages to be updated asynchronously by
exchanging small amounts of data with the server behind the scenes.
This means that it is possible to update parts of a web page,
without reloading the whole page.
Classic web pages, (which do not use AJAX) must reload the entire
page
if the content should change.
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 7

C-link social networking site


Examples of applications using AJAX: Google Maps, Gmail,
YouTube, and Facebook tabs.
AJAX is based on internet standards, and uses a combination of:
XMLHttpRequest object (to exchange data asynchronously with a
server)
JavaScript/DOM (to display/interact with the information)
CSS (to style the data)
XML (often used as the format for transferring data)
AJAX applications are browser and platform-independent!

2.2 HARDWARE AND SOFTWARE SPECIFICATION


Hardware Requirements
Processor

Intel Pentium IV 2.0 GHz and above

RAM

512 MB and above

Hard disk

40GB and above

Monitor

CRT or LCD monitor

Keyboard

Normal or Multimedia

Mouse

Compatible mouse

Software Requirements
Front End

HTML5

Language

PHP

Back End

MySQL

Operation System

Windows XP or above

Browser

Any latest browser

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 8

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 9

C-link social networking site

CHAPTER:3

ANALYSIS DOCUMENT

3.1 SYSTEM STUDY AND ANALYSIS


Preliminary investigation examines project feasibility; the likelihood the
system will be useful for the organization. The main objective of the feasibility
study is to test the technical, Operational and economical study for adding new
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 10

C-link social networking site


modules and debugging old running system. All system is feasible if they are
unlimited resources and infinite time. The aspect of the feasibility study portion:
Technical feasibility
Operation feasibility
Economical feasibility

Technical feasibility
The technical issue usually raises during the feasibility stage of the investigation
include the following:
Does the necessary technology exist to do what is suggested?
Does the proposed equipment have the technical capacity to hold the
data required to use the new system?
Will the proposed system have provided the adequate response to
inquiries, regardless or the location of the system?
Can the system be upgrade if developed?
Are there technical guarantee of accuracy, reliability, ease of access and
data security?

Operational study
Proposed projects are beneficial if only the can be turned out into information
system. That will meet the organizations operating requirements. Operational
feasibility aspect of the project is to be taken as an important part of the project
implementation. Some of the issues raised are to test the operational feasibility of
the project including the following:
Is there sufficient support for the management from the user?
Will the system be used and work properly if it is being developed
and implemented?
Will there be any resistance from the user that will undermine the
possible application benefit?

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 11

C-link social networking site


The system is target to be in accordance with the above mentioned issues.
Beforehand, the management issues and user requirements have to be taken into
consideration. So there is no question of resistance from the users that can
undermine the possible application benefits.
The well planned design would ensure the optimal utilization of the computer
resources and would help in the improvement of performance status.

Economic feasibility
A system can be developed technically that will be used if installed must still be a
good investment for the organization. In the economical feasibility, the
development cost in creating the system is evaluated against the ultimate benefit
derived from the new systems. Financial must equal or exceed the costs.
The system is economically feasible. It does not require any addition hardware or
software. Since the interface for the system is developed using the existing
resources and technologies available at NIC, there is normal expenditure and
economical feasibility for certain.

3.2 SYSTEM REQUIREMENTS


Functional Specifications
Server Object
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 12

C-link social networking site


The Server class acts as a wrapper for all server functions for our social
networking site. It essentially acts as a link between all of the information such as
accounts, account details, pages, notes, etc. to our database. When any other model
object such as a page is pulled from the server, a temporary copy is made. If that
temporary copy is changed in any way. The new version must be sent to the server
in order to update the permanent copy. The reason behind local copies is that all the
necessary information for the object is sent over in one easy-to-use package. Then
the update to the database can be done all at once by sending back that single
object. There is no need for multiple functions or a function that takes a large
number of parameters.
Account Object
Each user who wants to use the site must create an account. This is the head class
that all other objects use to determine what a user does and when the user did it.
The accounts information has four purposes: hold the login information, hold
friend information, hold prole information, and hold privacy information with
such a large amount of information to keep track of, the Account class would be
very large and dicult to work with. Therefore to ease the load, the Account class
was broken up into three dierent classes. There is the actual account class which
keeps track of login information and friend information. It also holds the other two
classes within it. Prole information was outsourced to the Account Details class,
and privacy settings were outsourced to the Privacy Settings class. The only time
the Account class needs to be updated is when the user changes his/her username
and/or password. All other settings are handled by the Account Details and Privacy
Settings classes.
Privacy Settings Object
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 13

C-link social networking site


A Privacy Settings object is the other helper class created whenever a new Account
object is created. This object contains all the privacy settings that a user has, such
as who can view his/her media or custom pages. This class is called any time a user
visits a prole or content created by another user. However, it does not directly
interact with the other model classes, only the view.
Chat Session Object, Event Object, Link Object, Note Object and Page
Object
These objects contain unique information for a particular type of action a user
performs. All of these contain a reference to the account that owns them. Each
object is a working-copy of an object in the Server. Anytime one of these objects
is created on the Server, an entry of its creation is added to the news feed database.
Message Object
A Message object is created when a user composes a new message to be sent to a
friend. After it is conrmed that the friend is located in the database, the Message
object adds its information to the database. When a user checks his or her inbox, a
list of messages that were sent to the user will be shown in descending order of
when they were received.
Wall Post Object
A Wall Post object works very similar to a Message object. The only dierence is
that the Wall Post objects are viewable to all friends of the user. Another di erence
is that a Wall Post object can hold comments. If a user adds a wall post to his or her
own account, their status will change to the new wall post.
Friends
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 14

C-link social networking site


The most important feature is being able to add and remove friends. In our Social
Networking site, making friends is a fairly straightforward process. Users can type
in the name of a friend in the search bar at the top of their home page. The database
is queried for an account that has the search term contained in the full name, any
media les with the search terms in the description, any pages with the search
terms in the titles, any links with the search terms
in the titles, and any notes with the search terms in the title. For example, User A
could search for User B in the search bar. After clicking on User Bs prole, User A
will see a button that says Send Friend Request. Clicking on it will send an alert to
User B that User A wants to be a friend. The friend request will now be in the
friends list of User B, where he/she can either accept it or ignore it, letting it sit
there indenitely. If user B accepts the request, User A will be added to User Bs
friends list and vice versa. Being friends has its advantages. For example, only
friends can chat to each other. Also, friends can view any part of a prole that is
marked as friends only. Finally, for a user to view his/her friends and incoming
friend requests, he/she just clicks on the friends tab which brings up a frame.
Account Creation
When a user accesses the site for the rst time, he/she must create an account
before using any of the site features. The account creation process is broken into
three sections. The rst section deals with the login information and is required for
the user to ll out. This includes the email, password, and password conrmation.
The purpose behind the password conrmation is to ensure that the user didnt
accidentally mistype when creating a password. The second section deals with
information about who you are such as name, location, and gender. Most of these
elds are optional except for your name and gender. It wouldnt be much of a
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 15

C-link social networking site


social network if everyone was named anonymous. The nal section deal with
information about the users likes and dislikes, such as interests and activities.
Unlike the other two sections, this section is completely optional. Once the user
clicks create account, a new account, account details, and privacy settings are
added to the server, and the user is brought back to the login page.
Privacy Options
Privacy is very important feature for some people, and social networking is no
exception to this. Our system provides three levels of privacy: open, friends only,
and closed. A feature with an open privacy level is public and may be viewed by
anyone. By contrast, a feature with a closed privacy level is completely private and
can only be viewed by the account owner. A feature with a friends only privacy
level is fairly self-explanatory. By default, al privacy levels are set to open when a
new account is created. To change privacy levels, the user can click on the options
tab on the top menu bar. The current features with privacy levels are media share,
account wall, user pages, notes, and the overall prole privacy.
The implementation of privacy is a fairly straightforward process. When the user
makes changes to the privacy level, the Privacy Settings object in the account is
updated with the new privacy settings. That working copy is then passed into the
update method of the server, and that queries the database to set the record for that
privacy settings object to the new values. When a user visits another prole, the
prole owner is pulled from the database. A function called can view page() is and
is passed the prole owner, the viewer prole and the page type. In the function the
privacy settings object is pulled from the viewer prole and the page type
determines which privacy setting is pulled from the object. If the setting is open,
the function automatically returns true. If the setting is friends only, the function
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 16

C-link social networking site


only returns true if the viewer prole is a friend of the page owner or if the viewer
prole and the page owner are the same. Finally, if the setting is closed, the
function only returns true if the viewer prole is the page owner. Once the function
returns its answer the page will either do one of to things. If the function returns
true, the viewer is allowed to view this page, and it will load normally. If the
function returns false, the viewer is not supposed to view the page, and it will
redirect to an error page.
Chatting
One of the advantages of having friends is the ability to have live communications
with them via chat. When a friend is online, he/she will appear in the chat tab as an
available friend to chat with. To start a chat session, simply click on the name of
the friend which will begin a new chat session. The little bar at the bottom will
change from chat disabled to chatting with friend name as seen in the gure below.
Also, the friend receiving the chat will get a notication that a new chat session has
started. Then the two friends can chat with each other until one or both log out.
The chat feature is a little more complex than others as it requires a combination of
JavaScript and JQuery to work. When a user clicks on a friend name to begin a
chat, a chat request is sent to the database. On every page there is a JQuery
function that queries the server for any new chat requests once a second. It needs to
be JQuery, so the client can request for the server to run a check and return any
relevant information. If it was pure PHP, the page would never load completely,
because the page cannot nish loading until the server is done all preprocessing.
The JavaScript portion of JQuery allows the client to ask the server to do more
processing after the page has been loaded.[3] If there is a new chat request, a pop
under is generated, notifying the receiver of the new chat that is starting or a new
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 17

C-link social networking site


pending chat if the user is in another chat. When a user send a message, another
JQuery function is called, to alert the server that it needs to update the chat session
with a new message. At the same time, another JQuery function is running to ask
the server once a second if the chat session has been updated. Overall, it is a lot of
the client asking the server to send over any changes that exist.
Messaging
Unlike with chatting, users can send a message to any other user. For user A to
send a message to user B, he/she simply goes to the message center tab and clicks
compose message. He then lls out the form as shown in the gure below with the
email of the recipient, the message title, and the message content. The new
message will then be in User Bs inbox in the message center.
Messaging is implemented by storing a record of the message in the server. First a
message object is constructed that takes into and from accounts, the message body,
and the date it was sent. The message body is retrieved from a user submitted form,
the from account is retrieved from the user session, and the receiver account is
retrieved from the recipient email address. The receiver account is validated, to
ensure the sender didnt try to send a message to a non-existent receiver. Finally,
the new message is stored in the server. Retrieving messages sent to the user is a
simple method of querying the server for any messages that have been sent to the
user, and this is done by checking the receiver id of each message against the
account id of the user. Any matches are returned to the inbox of the user as shown
in the gure below.
Media Uploading

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 18

C-link social networking site


As people use their social networking account, they will want to be able to upload
funny or interesting images, video, music, etc., to share with their friends. The
media upload section will be located at the media tab, where users are able to
specify a le to upload as well as provide a short description of the le to be
uploaded. In order to prevent users from uploading potentially malicious les such
as executable, only certain le extensions are supported. These allowed extensions
cover popular image extensions such as png, jpg, gif, and bitmap, video extensions
wmv and avi, audio extensions mp3, wma, and wav, and some document les
including txt, rtf, doc, and pdf.
The inner workings of this uploading process are surprisingly simple, since the
HTTP server takes care of requesting the le from the client automatically. After
the user clicks upload, the le is sent to the server and stored in a temporary
location. Through PHP all information about these temporary les can be accessed
through the $ FILES variable. The temporary location is stored in that variable and
can be used to pull the le name and le extension.[1] That extension is then
checked against an array of allowed extensions. If the extension is in the list, the
le is then moved to a permanent location in the media folder under a subfolder for
the users account. If the extension is not on the list, it is left in the temporary
folder where it will be automatically deleted by the server once the php script
completes.

Wall
The wall is a place where the account owner can express his current feeling or
thoughts with a wall status. Other users can add their thoughts by creating wall

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 19

C-link social networking site


posts that show up below the status. It is basically a way for many users to
communicate publicly or simply leave their thoughts about each other

Non-Functional Specification
Secure access of confidential data by user name and password. This
application is secure for every kind of its users, because if any user logout
from any session then nobody will be able to access his profile without
knowing his confidential password.
24 X 7 availability
Better component design to get better performance at peak time.
The database used here is robust, reliable & fast. So users will have to wait
for the output very short time.
This application can be accessed from any type of platform.
There is no case of redundancy in the database so it will not take extra
memory space.
Username & password are sent to the users via email after registration.

Password recovery system is also provided in case of forgetting the


password.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 20

C-link social networking site

CHAPTER:4

DESIGN SPECIFICATIONS

4.1 Modular Design


The application comprises the following major modules:
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 21

C-link social networking site


Registration Module
This module provides functionalities for those people who want to open an
account. Applicants can post their views with personal and professional details.
They can also update the profile as frequently as required. The member can also
browse through the friends profile available. Members can also get message alerts
when their friends message them.
Profile Module
This module provides functionalities related to members profile. Logged users can
see their details and if they wish to change any of their information they can edit it.
Friends list Module
This module provides functionalities related to the management of the users
friends list. The user can add friends, delete friends and block friends.

4.2 System Design


Data Flow Diagrams
Data flow diagrams model the flow of data into, through, and out of an information
system:
show the processes that change or transform data
show the movement of data between processes
represent a system as a network of processes which transform data flowing
between them
The user screen flow shows what a user of the community will see. After
successfully logging on, the user will be given various links (such as search users,
search boards, view mail, etc.), and be able to select options from there, or go back
to their home.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 22

C-link social networking site

Use case diagrams.


A use case diagram is a graphic depiction of the interactions among the elements of
a system. A use case is a methodology used in system analysis to identify, clarify,
and organize system requirements. In this context, the term "system" refers to
something being developed or operated, such as a mail-order product sales and
service Web site. Use case diagrams are employed in UML (Unified Modeling
Language), a standard notation for the modeling of real-world objects and systems.
System objectives can include planning overall requirements, validating
a hardware design, testing and debugging a software product under development,
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 23

C-link social networking site


creating an online help reference, or performing a consumer-service-oriented task.
For example, use cases in a product sales environment would include item
ordering, catalog updating, payment processing, and customer relations. A use case
diagram contains four components. The boundary, which defines the system of
interest in relation to the world around it.

The actors, usually individuals involved with the system defined according
to their roles.

The use cases, which are the specific roles played by the actors within and
around the system.

The relationships between and among the actors and the use cases.
Login/Registration

<<include>>
Regester for login

Get email to confirm registration

<<include>>
Login

Validate user

User

<<include>>
Request for forgetted passward

Get password email

<<include>>

Home Page

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 24

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 25

C-link social networking site


Wall Page

Delete message from own wall

User
Reply to Message

Blog Page

Add/ Modify/ Delete Post to blog

Add/ Delete comment on blog post


User

Profile Page

Add/ Modify/ delete profile info


User

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 26

C-link social networking site

Search Friend Page

Get List of Searched Friend

Add friend
User
Write message on friends wall

Delete own message from friendrs wall

Friend List Page

View Profile Info

Write message on friends wall

Delete own message from friendrs wall


User

Delete friends

Add/ Delete comment on blog post

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 27

C-link social networking site

Photo Page

Add/ Delete photo

User

Context Diagram
The highest level data flow diagram is the context diagram.
The context diagram shows the interaction of the system with its environment in
terms of data flows
The context diagram defines the boundary of the system (the scope of the system)
Only the data flows which leave the system and the data flows which come from
outside the system are shown.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 28

C-link social networking site


0 Level DFD:
A level 0 DFD, also called a fundamental system model or context diagram
represents the entire software element as a single bubble with input and output
data indicated by incoming and outgoing arrows, respectively.

UUuUUUUUU
USER

Response received

ADMIN

Login
Views Personal detail

Response received

Send Invitation
Views Mail Message
Detail

Entered new data or existing


data update

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 29

C-link social networking site


1 Level DFD:
This level of DFD provide more detailed structure. It provides a detailed view of
requirements and flow of data from 1 bubble to another.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 30

C-link social networking site

Entity relationship diagram

The entity relationship model is a high level data model.

It is based on a

perception of a real world that consists of a collection of basic objects, called


entities, and of relationship among these objects. It was developed to facilitate
database design by allowing specification of an enterprise schema, which represent
the overall logical structure of a database.
Entity: An entity is an object that has its existence in the real world. It includes
all those things about which data is collected. An entity may be a tangible object
such as a student, a place or a part. It may also be non-tangible such as an event, a
job title or a customer account. For example, if we say that a customer buys goods,
it means customer and goods are entities.
Diagrammatically, entities are represented in rectangles.

An Entity Set: It is a set of entities of the same type that share the same
properties, or attributes. The set of all persons who are customers at a given bank,
example, can be defined as the entity set customer.
Attributes: Attributes are units that describe the characteristics or properties of
entities. In a database, entities are represented by tables and attributes by columns.
For example, a customer entity might have numerous attributes such as code, name
and addresses. Similarly, the goods entity may have attributes like code and price.
They are drawn in elliptical shapes along with the entity rectangles.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 31

C-link social networking site


Entity relationship diagram

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 32

C-link social networking site


4.3 DATABASE DESIGN
Data base is used to store the relevant information of the individuals. A database is
a collection of rows and columns in which rows indicates the tuple and column
indicates the domain of table. Database design is the process of producing a
detailed data model of a database. This logical data model contains all the needed
logical and physical design choices and physical storage parameters. Need to
generate a design in a data definition language, which can then be used to create a
database. A fully attributed data model contains detailed attributes for each entity.
The term database design can be used to describe many different parts of the
design of an overall database system. Principally, and most correctly, it can be
thought of the logical design of the relation of the base data structures used to store
the data. In the relational model these are the classes and named relationships.
However, the term database design could also be used to apply to overall process
of designing, not just the base data structure, but also the forms and queries used as
part of the overall database application within the database management system
(DBMS).

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 33

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 34

C-link social networking site

Data Dictionary
Table Friends

Column

Type

Null Default

member_id int(11)

No

datetime

datetime

No

status

varchar(11
No
)

friends_wit
int(11)
h

Comments

No

Table Indexes

Keyname

Type

Unique Packed Column Cardinality Collation Null Comment

PRIMARY BTREE Yes

No

like_id

No

Table Members

Column

Type

Null Default

Comments

UserName varchar(10) No
EmailId

varchar(80) No

Password

varchar(30) No

Gender

varchar(30) No

Country

Varchar(30) no

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 35

C-link social networking site

CHAPTER:5

CODING

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 36

C-link social networking site

Connection to database
<?php
$db_conx = mysqli_connect("localhost", "root", "", "socialn");
// Evaluate the connection
if (mysqli_connect_errno()) {
echo mysqli_connect_error();
exit();
} else {
//echo "Successful database connection";
}
?>

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 37

C-link social networking site

Home page
<?php
include_once("php_includes/check_login_status.php");
$sql = "SELECT username, avatar FROM users WHERE activated='1'
ORDER BY RAND() LIMIT 15"; //in where avatar is NOT NULL AND
$query = mysqli_query($db_conx, $sql);
$usernumrows = mysqli_num_rows($query);
$userlist = "";
while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
$u = $row["username"];
$avatar = $row["avatar"];
$profile_pic = 'user/'.$u.'/'.$avatar;
$userlist .= '<a title="'.$u.'"><img src="'.$profile_pic.'" alt="'.$u.'"
style="width:100px; height:100px; margin:10px;"></a> '; // put b/w a
tag

<img

src="'.$profile_pic.'"

alt="'.$u.'"

style="width:100px;

height:100px; margin:10px;"> href="user.php?u='.$u.'"


KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 38

C-link social networking site


}
$sql = "SELECT COUNT(id) FROM users WHERE activated='1'";
$query = mysqli_query($db_conx, $sql);
$row = mysqli_fetch_row($query);
$usercount = $row[0];
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>C-Link Social network</title>
<!--<link rel="icon" href="favicon.ico" type="image/x-icon">-->
<link rel="stylesheet" href="style/style.css">
<script src="js/main.js"></script>
</head>
<body>
<?php include_once("template_pageTop.php"); ?>
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 39

C-link social networking site

<div id="pageMiddle">
<div id="leftm">
<!--<h3>Total users: <?php //echo $usercount; ?></h3>-->
<h3>Random people chosen from our database</h3>
<?php echo $userlist; ?>
</div>
<div id="rightm"">
<img src="images/n1.jpg">
</div>
</div>
<?php include_once("template_pageBottom.php"); ?>
</body>
</html>

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 40

C-link social networking site

Notification code
<?php
include_once("php_includes/check_login_status.php");
// If the page requestor is not logged in, usher them away
if($user_ok != true || $log_username == ""){
header("location: index.php");
exit();
}
$notification_list = "";
$sql = "SELECT * FROM notifications WHERE username LIKE
BINARY '$log_username' ORDER BY date_time DESC";
$query = mysqli_query($db_conx, $sql);
$numrows = mysqli_num_rows($query);
if($numrows < 1){
$notification_list = "You do not have any notifications";
} else {

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 41

C-link social networking site


while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
$noteid = $row["id"];
$initiator = $row["initiator"];
$app = $row["app"];
$note = $row["note"];
$date_time = $row["date_time"];
$date_time = strftime("%b %d, %Y", strtotime($date_time));
$notification_list

.=

"<p><a

href='user.php?

u=$initiator'>$initiator</a> | $app<br />$note</p>";


}
}
mysqli_query($db_conx, "UPDATE users SET notescheck=now()
WHERE username='$log_username' LIMIT 1");
?><?php
$friend_requests = "";
$sql = "SELECT * FROM friends WHERE user2='$log_username' AND
accepted='0' ORDER BY datemade ASC";
$query = mysqli_query($db_conx, $sql);
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 42

C-link social networking site


$numrows = mysqli_num_rows($query);
if($numrows < 1){
$friend_requests = 'No friend requests';
} else {
while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
$reqID = $row["id"];
$user1 = $row["user1"];
$datemade = $row["datemade"];
$datemade = strftime("%B %d", strtotime($datemade));
$thumbquery = mysqli_query($db_conx, "SELECT avatar
FROM users WHERE username='$user1' LIMIT 1");
$thumbrow = mysqli_fetch_row($thumbquery);
$user1avatar = $thumbrow[0];
$user1pic = '<img src="user/'.$user1.'/'.$user1avatar.'" alt="'.
$user1.'" class="user_pic">';
if($user1avatar == NULL){
$user1pic

'<img

src="images/avatardefault.jpg"

alt="'.$user1.'" class="user_pic">';
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 43

C-link social networking site


}
$friend_requests

.=

'<div

id="friendreq_'.$reqID.'"

class="friendrequests">';
$friend_requests

.=

'<a

href="user.php?u='.$user1.'">'.

$user1pic.'</a>';
$friend_requests .= '<div class="user_info" id="user_info_'.
$reqID.'">'.$datemade.' <a href="user.php?u='.$user1.'">'.$user1.'</a>
requests friendship<br /><br />';
$friend_requests

.=

'<button

onclick="friendReqHandler(\'accept\',\''.$reqID.'\',\''.
$user1.'\',\'user_info_'.$reqID.'\')">accept</button> or ';
$friend_requests

.=

'<button

onclick="friendReqHandler(\'reject\',\''.$reqID.'\',\''.
$user1.'\',\'user_info_'.$reqID.'\')">reject</button>';
$friend_requests .= '</div>';
$friend_requests .= '</div>';
}
}
?>

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 44

C-link social networking site

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Notifications and Friend Requests</title>
<link rel="icon" href="favicon.ico" type="image/x-icon">
<link rel="stylesheet" href="style/style.css">
<script src="js/main.js"></script>
<script src="js/ajax.js"></script>
<script type="text/javascript">
function friendReqHandler(action,reqid,user1,elem){
var conf = confirm("Press OK to '"+action+"' this friend request.");
if(conf != true){
return false;
}
_(elem).innerHTML = "processing ...";
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 45

C-link social networking site


var ajax = ajaxObj("POST", "php_parsers/friend_system.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
if(ajax.responseText == "accept_ok"){
_(elem).innerHTML = "<b>Request Accepted!
</b><br />Your are now friends";
} else if(ajax.responseText == "reject_ok"){
_(elem).innerHTML

"<b>Request

Rejected</b><br />You chose to reject friendship with this user";


} else {
_(elem).innerHTML = ajax.responseText;
}
}
}
ajax.send("action="+action+"&reqid="+reqid+"&user1="+user1);
}
</script>
</head>
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 46

C-link social networking site


<body>
<?php include_once("template_pageTop.php"); ?>
<div id="pageMiddle">
<!-- START Page Content -->
<div

id="notesBox"><h2>Notifications</h2><?php

echo

$notification_list; ?></div>
<div id="friendReqBox"><h2>Friend Requests</h2><?php echo
$friend_requests; ?></div>
<div style="clear:left;"></div>
<!-- END Page Content -->
</div>
<?php include_once("template_pageBottom.php"); ?>
</body>
</html>

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 47

C-link social networking site

CHAPTER:6

TEXTING

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 48

C-link social networking site

6.1 SYSTEM TESTING


System testing is a critical element of quality assurance and represents
the ultimate review of analysis, design and coding. Test case design focuses on a
set of techniques for the creation of test because that meet overall testing objective.
When a system is developed it is hoped that it performs properly. The main
purpose of testing an information system is to find the errors and correct them. The
scope of system testing should include both manual and computerized operations.
System testing is comprehensive evaluation of the programs, manual procedures,
computer operations and controls.
System testing is the process of checking whether the developed system is
working according to the objective and requirement. All testing is to be conducted
in accordance to the test conditions specified earlier. This will ensure that the test
coverage meets the requirements and that testing is done in a systematic manner.
The process of analyzing the software item to detect the differences between
existing or required condition and evaluate the features of the software items. The
thorough testing of the system before release of the software needs to be done vide
the various test cases and modes so that the software becomes devoid of bugs and
uses minimum space requirements as well as minimum time to perform. The test
cases were selected beforehand with expected results defined and actual results
recorded for comparison. The selection of test cases is done vide White Box
Testing technique to check the internal programming logic and efficiency and
vide Black Box Testing technique to check software requirement fulfillment with
intension of finding maximum number of errors with minimum effort and time.
KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 49

C-link social networking site


Although test cases are a design by considering the cyclomatic complexity,
conditional test, still the software code is not in its optional form, as all
other possible alternative parts in the software are not considered. At the
integration level, the software will be passing to the third party tests which would
further enhance the software optimality and efficiency.

TEST DATAIMPLEMENTATION AND THEIR RESULT ON:

The quality and standardization of the software / application


p a c k a g e depends truly on the various predefined testing norms and on
the performances of the software over those norms. There are various
standards existing in the software industry the engineered end product
strives to achieve viz. ISO 9002 SEI CMM Level5 etc. These s t a n d a r d s
are achieved only when the concerned sof tware fulfils the tests
a s p e r t h e respective testing norms predefined in them vide the various
test cases and parameters using the CASE topologies. Generally, software is
tested both on a stand-alone mode as well after integrating all the
modules in the system vide deferent available testing methods/norms.
The following Flow Graph methodology was used while testing the software

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 50

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 51

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 52

C-link social networking site


Here each circle represents one or more non branching procedural language or
source code s t a t e m e n t s

in

Flow

Graph.

While

performing

C o n d i t i o n T e s t i n g D o m a i n T e s t i n g methodology was selected.


While performing Loop Testing simple loops, concatenated loops, nested
and unstructured loops were tested thoroughly.

TEST CHARACTERS :
1.A good test has a high probability of finding an error.
2.A good test is not redundant.
3.A good test should be best of breed.
4.A good test should be neither too simple nor too complex.

BLACK BOX TESTING:


The method of Black Box Testing is used by the software engineer to derive the
required results of the test cases:
1.Black Box Testing alludes to test that are conducted at the software
interface.
2.A Black Box Test examines some fundamental aspect of a sy stem with
little regard for the internal logic structure of the software.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 53

C-link social networking site


3.A limited number of important logical paths can be selected and
exercised.
4.Important data structure can be probed for validity.
Black box testing was performed to find errors in the following categories:

Incorrect or missing functions


Graphics error.
Errors in data in binary format.
Error in data in integer format.
File error.
Pointer error.
Memory access error.
Variable error
.
Performance error

WHITE BOX TESTING:


White Box Testing is sometimes called Glass Box Testing. Using Whit e
Box Testing methods the software engineer can derive the following test cases:
11. G u a r a n t e e t h a t a l l i n d e p e n d e n t p a t h s w i t h i n a m o d u l e h a v e
b e e n e x e r c i s e d a t l e a s t once.
2.Exercise all logical decisions on their true and false sides.
3.Execute all loops at their boundaries and within their operational
bounds.
4.Exercise internal data structures to ensure the validity.50

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 54

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 55

C-link social networking site


In White Box Testing efforts were made to handle the following: Number of input parameters equal to number of arguments.
Parameters and arguments attributes match.
Number

of

arguments

transmitted

is

called

modules

e q u a l t o a t t r i b u t e s o f parameters.
U n i t s y s t e m o f a r g u m e n t t r a n s m i t t e d i s c a l l e d m o d u l e s e q u a l
u n i t s y s t e m o f parameter.
Number of attributes and order of arguments to build in functions correct.
Any references to parameters not associated to build in functions correct.
Input only arguments altered.
Global variable definition consistent across module.
Files attributes correct.
Format specifications matches I/O specification.
Files opened before use.
File closed while working is going on.

I/O errors handled.


Any textual errors in output information.

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 56

C-link social networking site


6.2 UNIT TESTING
The unit testing is performed to test the validity of the individual units. This is
done in the coding phase with the interactive testing. Thus it itself constitutes a
majority of functionality test for each logical unit.

6.3 INTEGRITY TESTING


When all the development of all the units or modules is
c o m p l e t e d a n d integrated the integrity test phase is started. In this phase the
interface between t h e m o d u l e s a r e t e s t e d . T h i s p h a s e b a s i c a l l y
v e r i f i e s w h e t h e r i n t e r m o d u l e exchange of information and events are as

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 57

C-link social networking site


per

required

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

system

behavior.

Page 58

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 59

C-link social networking site


6 .4 VALIDATION TESTING
Tes t s w e r e p e r f o r m e d t o f i n d c o n f o r m i t y w i t h t h e r e q u i r e m e n t s .
Plans and p r o c e d u r e s w e r e d e s i g n e d t o e n s u r e t h a t a l l
f u n c t i o n a l r e q u i r e m e n t s a r e satisfied. The software was alpha-tested.
There are two goals in preparing test plans. Firstly, a properly detailed test plan
demonstrates that the program specifications are underst ood
c o m p l e t e l y. Secondly, the test plan is used during program testing to prove the
correctness of the program.

6.5 TEST CASES


Login:
Sl

Input Values

Test case

Conditional being checked

Result

Email

Empty

Please Enter valid Username

Successfu
l

Username

Already
Exists or
not

Login ID should be unique

Successfu
l

Password

Empty

Please Enter valid Password

Successfu
l

No

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 60

C-link social networking site


5

Password

If wrong
Password

Enter Password

Successfu
l

Password

Length

Length should be less than or equal


to 10 character

Successfu
l

Registration:
Sl

Test case

Conditional being checked

Result

No

Input
Values

1.

Username

Empty

It must not be empty

Successfu
l

Email

Empty

Enter valid Email ID.

Successfu
l

Password

Empty

Enter valid Password.

Successfu
l

Password

Length

Minimum 8 characters

Successfu

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 61

C-link social networking site


required

Confirm
Password

Empty

Password and confirmation


password must be same

Successfu
l

Gender

Select

Select Male or female

Successfu
l

Country

Select

Select your country

Successfu
l

Input Values

Test case

Conditional being checked

Result

1.

Image Title

Null

Image title must not be empty

Successfu
l

Add Image

BROWSE

Please browse image

Successfu
l

Delete Image

Select

Please select image to delete

Successfu
l

Photos:

Sl
No

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 62

C-link social networking site

CHAPTER:7

INPUT/OUTPUT SCREEN

Home page

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 63

C-link social networking site

User page

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 64

C-link social networking site

Notification page

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 65

C-link social networking site

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 66

C-link social networking site

CHAPTER:

CONCLUSION

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 67

C-link social networking site

CONCLUSION
Social Networking website is a revolutionary idea with a very bright future with
further scope for advancements. The opportunities provided from this medium are
immense and many organizations are making use of this medium to better their
practices. Organizations are no longer at the mercy of the media to advertise or
convey their message. With the help of social networking they can advertise or
communicate in a more efficient way. Similarly people dont have to rely on
newspapers or TV to get their daily dose of news it can all be obtained from a
social networking site. People can follow or get information from any part of the
world.
The world is getting closer every day and everyone wants to be connected. After
all the advantages, the problem that arises is of information overload and security.
Social networks, unlike the common media, do not have a pattern as to how much
information has to be conveyed and where to draw the line. Too much of
information may confuse users. Security might be another area of concern where
people can get illegal access to a users information. The future of social
networking looks very promising but still it has to deal with the problems
associated with it.

BIBLIOGRAPHIE

KOSHYS INSTUTITES OF MANAGEMENT STUDIES

Page 68

You might also like