Вы находитесь на странице: 1из 25

BANSAL INSTITUTE OF SCIENCE & TECHNOLOGY

BHOPAL(M.P.)

Department of Information Technology

Social networking site


Synopsis

Guided By: - Submitted By: -

Rishi Acharya Sir Akash choubey(0112IT071008)

Bharat seetha (0112IT071022)

Krishna pratap singh (0112IT071043)

1
CONTENTS

TITLE PAGE……………………………………………………………………………………………1

CERTIFICATE…………………………………………………………………………………………2

ACKNOWLEDGEMENT……………………………………………………………………………...3

1. INTRODUCTION…………………………………………………………………………………...6

1.1 Project Definition 7


1.2 Objective 8
1.3 Scope 8
1.4 Platform Specification 8
1.4.1 Hardware 8
1.4.2 Software 8
1.4.3 Implementation Language 9

2. SYSTEM ANALYSIS……………………………………………………………………………..10

2.1 Identification of Need 11


2
3.FEASIBILITY STUDY……………………………………………………………………………..12

3.1 Technology and system feasibility 13

3.2 Economic feasibility 13

3.3 Legal feasibility 13

3.4 Operational feasibility 14

3.5 Schedule feasibility 14

4. LITERATURE SURVEY………………………………………………………………………...15

4.1 Computer Network 16

4.2 Client-Server Network 16

4.3 Local Area Network 17

4.4 Network Models 18

4.5 HTTP Protocol 19

5. TECHNICAL PART……………………………………………………………………………..20

5.1 About Technology 21

5.2 Frontend and Backend 21

6. SOFTWARE ENGINEERING APPORACH…………………………………………………..23

6.1 Requirement Analysis 24

6.1.1 Software Requirement Specification 24

3
6.1.2 Advantages 25

6.2 Design 27

6.2.1 class Diagram 28

6.2.2 Use case Diagram 29

6. Conclusion……………………………………………………………………………………...30

4
1Introduction

5
DEFINATION
A social network service is an online service, platform, or site that
focuses on building and reflecting of social networks or social relations
among people, e.g., who share interests and/or activities. A social
network service essentially consists of a representation of each user
(often a profile),

his/her social links, and a variety of additional services. Most social


network services are web based and provide means for users to interact
over the internet, such as email and instant messaging. Although online
community services are sometimes considered as a social network
service. In a broader sense, social network service usually means an
individual-centered service whereas online community services are
group-centered. Social networking sites allow users to share ideas,
activities, events, and interests within their individual networks.

Social networking sites tend to share some conventional features. Most


often, individual users are encouraged to create profiles containing
various information about themselves. Users can often upload pictures of
themselves to their profiles, post blog entries for others to read, search
for other users with similar interests, and compile and share lists of
contacts. In addition, user profiles often have a section dedicated to
comments from friends and other users. To protect user privacy, social
networks usually have controls that allow users to choose who can view
their profile, contact them, add them to their list of contacts, and so on.

In recent years, it has also become common for a wide variety of


organizations to create profiles to advertise products and services.

6
SCOPE
Users can check the informations about their friends and relatives,can
communicate to them through messages,integrated messengers,etc.

Users can also add their pictures,videos,sound clips,to their prifiles.

1.4:-Platform Specification:

1.4.1:-Hardware Requirements

 Primary Memory (RAM): 512 MB.


 Secondary Memory (Hard Disk): 2 GB.
 Video Display Unit: VGA Monitor.
 Keyboard: 101 Key Enhanced Keyboard.
 Mouse: Optical Mouse.

1.4.2:-Software Requirements

 Operating System: Windows XP and its later versions


 Programming Language:
 Front end: php
 backend: MySQL.
 Web-Server: WAMP

1.4.3:- Implementation Language

Brief Intro to PHP, Apache, MySQL, and Open Source


7
PHP, Apache, and MySQL are all part of the open source group of software programs. The open
source movement is a collaboration of some of the finest minds in computer programming. By
allowing the open exchange of information, programmers from all over the world contribute to
make a truly powerful and efficient piece of software available to everyone. Through the
contributions of many people to the publicly available source code, bugs get fixed, improvements
are made, and a good software program becomes a great one over time.

A Brief History of Open Source Initiatives

The term open source was coined in 1998 after Netscape decided to publish the source code for
its popular Navigator browser. This announcement prompted a small group of software
developers who had been long-time supporters of the soon-at-be open source ideology to
formally develop the Open Source Initiatives (OSI) and the Open Source Definition.

Although the OSI ideology was initially promoted in the hacker community, upon Netscape's
release of Navigator's source code, programmers from all walks of life began to offer
suggestions and fixes to improve the browser's performance. The OSI mission was off and
running, as the mainstream computing world began to embrace the idea.

Linux became the first operating system that could be considered open source (although BSD
was a close runner-up, distributed from Berkeley in 1989), and many programs followed soon
thereafter. Large software corporations, such as Corel, ~an to offer versions of their programs
that worked on Linux machines.

Although there are now numerous classifications of OSI open source licenses, any software that
bears the OSI Certification seal can be considered open source because it has passed the Open
Source Definition test. These programs are available from a multitude of Web sites; the most
popular is www.soarceforge.net.which houses more than 83,000 open source projects.

Why Open Source Rocks

Open source programs are very cool because:

8
1. They are free. The greatest thing about open source software is that it is free and
available to the general public. Software developers and programmers volunteer their
time to improve existing software and create new programs. Open source software
cannot, by definition, require any sort of licensing or sales fees.
2. They are cross-platform and "technology-neutral." By requiring open source
software to be non-platform specific, the open source community has ensured that the
programs are usable by virtually everyone. According to the Open Source Definition provided
by the Open Source Initiative at http://operfsource.org/docs/definition.php, open source
programs must not be dependent on any "individual technology or style of interface" and
must be "technology neutral." As long as the software can run on more than one operating
system, it meets the criterion.
3. They must not restrict other software. This basically means that if an open source
program is distributed along with other programs, those other programs may be open
source or commercial in nature. This gives software developers maximum control and
flexibility.
4. They embrace diversity. Diversity of minds and cultures simply produces a better result.
For this reason, open source programs cannot, by definition, discriminate against any
person or group of persons, nor against any "field of endeavor." For example, a program
designed for use in the medical profession cannot be limited to that field if someone in
another field wants to take the program and modify it to fit his or her needs.

For a complete list of the criteria a piece of software must meet before it can be considered
"open source," or for more information about the OS! or the open source community, visit the
OS! Web site atwww.opensource.org.

9
2System Analysis

10
2.1: Identification of needs:

 Scroller
Looking for a script that replaces the window's default scrollbars in scrolling the page? This
script allows you to use custom images to scroll the page up/down as the mouse moves over
them. The images are always in view at the corner of the window. A critical script in
environments where the default scrollbar is hidden (ie: popup window).

 Maps with Zooming Effect

Maps are worth a closer look, which is why there's Map Zoomer. It gives the ability to be magnified
when the mouse rolls over map. A "magnifying glass" that appears over the map lets the user
zoom in on any portion of it as it follows the cursor around. Furthermore, the magnification power
can be adjusted on the fly by turning the mouse wheel back or forth, just like in many graphics
programs. Script's features are:

• Applies the zoom effect to map on the page without adding any additional markup to it.
• Ability to use either the original map, or a different, higher resolution version of it as the
map used inside the magnifying glass, to provide as much detail as possible.
• The default zoom level (ie: 2x) can be changed if needed.
• When the user scrolls the mouse wheel while over the image, the zoom level decreases or
increases based on the scroll direction. The range of zoom can be changed.
• The size of the "magnifier" can be changed.

 Mover Images(Description Tool Tip)

Move the mouse over a link and have the image of your choice plus corresponding description
pop up, by using this image tooltip script. Each tooltip is defined inside the script then associated

11
with an element on the page by inserting a "rel" attribute into the later. Moreover, each tooltip can
easily sport a completely different style from its peers. CSS styles can be defined on each tooltip
individually inside the script.

The script detects for window edges and keeps each tooltip inside it.

3Feasibility Study

12
A feasibility study is an evaluation of a proposal designed to determine the difficulty in carrying
out a designated task. Generally, a feasibility study precedes technical development
and project implementation. In other words, a feasibility study is an evaluation or analysis of the
potential impact of a proposed project.

Five common factors (TELOS)


3.1:-Technology and system feasibility:
The assessment is based on an outline design of system requirements in terms of Input,
Processes, Output, Fields, Programs, and Procedures. This can be quantified in terms of volumes
of data, trends, frequency of updating, etc. in order to estimate whether the new system will
perform adequately or not. Technological feasibility is carried out to determine whether the
company has the capability, in terms of software, hardware, personnel and expertise, to handle
the completion of the project

3.2:-Economic feasibility:
Economic analysis is the most frequently used method for evaluating the effectiveness of a new
system. More commonly known as cost/benefit analysis, the procedure is to determine the
benefits and savings that are expected from a candidate system and compare them with costs. If
benefits outweigh costs, then the decision is made to design and implement the system. An
entrepreneur must accurately weigh the cost versus benefits before taking an action.

Cost-based study: It is important to identify cost and benefit factors, which can be categorized as
follows: 1. Development costs; and 2. Operating costs. This is an analysis of the costs to be
incurred in the system and the benefits derivable out of the system.

Time-based study: This is an analysis of the time required to achieve a return on investments. The
future value of a project is also a factor.

13
3.3:-Legal feasibility:
Determines whether the proposed system conflicts with legal requirements, e.g. a data processing
system must comply with the local Data Protection Acts.

3.4:-Operational feasibility:
Operational feasibility is a measure of how well a proposed system solves the problems, and
takes advantage of the opportunities identified during scope definition and how it satisfies the
requirements identified in the requirements analysis phase of system development.

3.5:-Schedule feasibility:
A project will fail if it takes too long to be completed before it is useful. Typically this means
estimating how long the system will take to develop, and if it can be completed in a given time
period using some methods like payback period. Schedule feasibility is a measure of how
reasonable the project timetable is. Given our technical expertise, are the project deadlines
reasonable? Some projects are initiated with specific deadlines. You need to determine whether
the deadlines are mandatory or desirable.

14
4Literature Survey

15
4.1: Computer Networks:
A computer network is an interconnected group of computers. Networks may be classified by the
network layer at which they operate according to basic reference models considered as standards
in the industry, such as the four-layer Internet Protocol Suite model. While the seven-layer Open
Systems Interconnection (OSI) reference model is better known in academia, the majority of
networks use the Internet Protocol Suite (IP).

Computer networks may be classified according to the scale: Personal area network (PAN), Local
Area Network (LAN), Campus Area Network (CAN), Metropolitan area network (MAN), or Wide
area network (WAN).

As Ethernet increasingly is the standard interface for networks, these distinctions are more
important to the network administrator than the user. Network administrators may have to tune the
network, to correct delay issues and achieve the desired Quality of Service (QOS).

Computer networks may be classified according to the functional relationships which exist
between the elements of the network, e.g., Active Networking, Client-server and Peer-to-peer
(workgroup) architectures.

4.2 :Client_Server Model:

Client-server is a computing architecture which separates a client from a server, and is almost
always implemented over a computer network. A client-server application is a distributed system
that constitutes of both client and server software. A client is a software or process that may
initiate a communication session, while a server can not initiate sessions, but is waiting for
requests from a client. Client and server may also aim at the host computer hardware connected
to a network that are residing the client and server software respectively.

Client/server describes the relationship between two computer programs in which one program,
the client, makes a service request from another program, the server, which fulfills the request.
Although the client/server idea can be used by programs within a single computer, it is a more
16
important idea in a network. In a network, the client/server model provides a convenient way to
interconnect programs that are distributed efficiently across different locations. Computer
transactions using the client/server model are very common. Most Internet applications, such as
email, web access and database access, are based on the client/server model

Figure: CLIENT-SERVER NETWORK WITH A HUB

4.3: Local Aera Network:

Local area network (LAN) supplies networking capability to a group of computers in close
proximity to each other such as in an office building, a school, or a home. A LAN is useful for
sharing resources like files, printers, games or other applications. A LAN in turn often connects to
other LANs, and to the Internet or other WAN.

Most local area networks are built with relatively inexpensive hardware such as Ethernet cables,
network adapters, and hubs. Wireless LAN and other more advanced LAN hardware options also
exist.

17
Specialized operating system software may be used to configure a local area network. For
example, most flavors of Microsoft Windows provide a software package called Internet
Connection Sharing (ICS) that supports controlled access to LAN resources.

4.4: NETWORK MODELS:

When dealing with networking, you may hear the terms “network model” and “network layer” used
often. Network models define a set of network layers and how they interact. There are several

18
different network models depending on what organization or company started them. The most
important two are:

• The TCP/IP Model – This model is sometimes called the DOD model since it was designed
for the department of defense. It is also called the internet model because TCP/IP is the
protocol used on the internet.
• OSI Network Model – The International Standards Organization (ISO) has defined a
standard called the Open Systems Interconnection (OSI) reference model. This is a seven
layer architecture listed in the next section.

4.5: HTTP Protocol:

The Hypertext Transfer Protocol (HTTP) is an Application Layer protocol for distributed,
collaborative, hypermedia information systems.

HTTP is a request-response standard typical of client-server computing. In HTTP, web


browsers or spiders typically act as clients, while an application running on the computer hosting
the web siteacts as a server. The client, which submits HTTP requests, is also referred to as
the user agent. The responding server, which stores or creates resources such as HTML files and
images, may be called the origin server. In between the user agent and origin server may be
several intermediaries, such as proxies, gateways, and tunnels.

HTTP is not constrained in principle to using TCP/IP, although this is its most popular
implementation platform. Indeed HTTP can be “implemented on top of any other protocol on the
Internet, or on other networks.” HTTP only presumes a reliable transport; any protocol that
provides such guarantees can be used.

19
5Technical Part

5.1 :About Technology:


20
Apache

Installing the three components, even if you don't have to, enables you to develop and test your
site in the comfort of your own workspace without having to upload to the file server just to
test at every little step. Even if you do a lot of off-line testing, however, we highly recommend
that you still perform a complete test once your site is live and running, because your settings
may differ from those on your Web hosting company's server. Even a small difference can cause
you big headaches.

Apache acts as your Web server. Its main job is to parse any file requested by a
browser and display the correct results according to the code within that file.

5.2: Frontend And Backend:

PHP

PHP is a server-side scripting language that allows your Web site to be truly dynamic. PHP
stands for PHP: Hypertext Preprocessor (and, yes, we're aware PHP is a "recursive acronym"-
probably meant to

confuse the masses). Its flexibility and relatively small learning curve (especially for
programmers who have a background in C, Java, or Perl) make it one of the most popular
scripting languages around. PHP's popularity continues to increase as businesses, and individuals
everywhere embrace it as an alternative to Microsoft's ASP language and realize that PHP's
benefits most certainly outweigh the costs (three cheers for open source!). According to
Netcraft, PHP code can now be found in approximately 16 million Web sites.

The version of PHP referenced in this book is the most recent stable release at the time of
publication: version 5.0.0. Although we discuss several of the most common uses and functions
21
of PHP, you can find a complete list of PHP functions in Appendix B of this book. As you
continue to program in PHP and your- comfort level increases (or the demands of your boss
grow), we encourage you to expand your use of built-in PHP functions to take advantage of its
tremendous power. You can download the PHP software from PHP's Web site at www.php.net.

MySQL

Another open source favorite, MySQL is the database construct that enables PHP and Apache to
work together to access and display data in a readable format to a browser. It is a Structured
Query Language server designed for heavy loads and processing of complex queries. As a
relational database system, MySQL allows many different tables to be joined together for
maximum efficiency and s~d.

some of the more popular features of this program are as follows:

1. Numerous column types cover virtually every type of data


2. Group functions for mathematical calculations and sorting
3. Commands that allow information about the databases to be easily and succinctly shown
to the administrator
4. Function names that do not affect table or column names.
5. A password and user verification system for added security.

22
6. SOFTWARE
ENGINEERING APPORACH

6.1 :Requirement Analysis:

23
Software requirements specifications (SRSs, also known as software functional specifications or
system specifications) templates or even writing SRSs, they might assume that being given the
opportunity to do so is either a reward or punishment for something they did (or failed to do) on a
previous project. Actually, SRSs are ideal projects for technical writers to be involved with
because they lay out the foundation for the development of a new product and for the types of
user documentation and media that will be required later in the project development life cycle. It
also doesn’t hurt that you’d be playing a visible role in contributing to the success of the project.

6.1.1 Software Requirements Specification


An SRS is basically an organization’s understanding (in writing) of a customer or potential client’s
system requirements and dependencies at a particular point in time (usually) prior to any actual
design or development work. It’s a two-way insurance policy that assures that both the client and
the organization understand the other’s requirements from that perspective at a given point in
time.

A well-designed, well-written SRS accomplishes four major goals:

• It provides feedback to the customer. An SRS is the customer’s assurance that the
development organization understands the issues or problems to be solved and the
software behavior necessary to address those problems. Therefore, the SRS should be
written in natural language (versus a formal language, explained later in this article), in an
unambiguous manner that may also include charts, tables, data flow diagrams, decision
tables, and so on.

• It decomposes the problem into component parts. The simple act of writing down software
requirements in a well-designed format organizes information, places borders around the
problem, solidifies ideas, and helps break down the problem into its component parts in an
orderly fashion.

• It serves as an input to the design specification. As mentioned previously, the SRS serves
as the parent document to subsequent documents, such as the software design
specification and statement of work. Therefore, the SRS must contain sufficient detail in the
functional system requirements so that a design solution can be devised.

• It serves as a product validation check. The SRS also serves as the parent document for
testing and validation strategies that will be applied to the requirements for verification.
24
25

Вам также может понравиться