You are on page 1of 66

1. INTRODUCTION ....................................... Error! Bookmark not defined.

1.1. PROJECT OVERVIEW ....................... Error! Bookmark not defined.


1.2. PURPOSE ............................................ Error! Bookmark not defined.
1.3. SCOPE ................................................................................................... 4
1.4. DEFINITION, ACRONYMS1

2. Functional or Specific Requirements ...... Error! Bookmark not defined.


2.1. EXTERNAL INTERFACE REQUIREMENTS...................................... 5
2.1.1. HARDWARE INTERFACE ................................................................... 5
2.1.2. SOFTWARE INTERFACE ..................................................................... 5
2.1.3. COMMUNICATION PROTOCOL....................................................... 51
2.2. NON FUNCTIONAL REQUIREMENT ................................................. 5
2.3. SOFTWARE SYSTEM ATTRIBUTE .................................................... 5
2.3.1. BROWSER COMPATABILITY............................................................. 5
2.3.2. GOBALIZATION SUPPORT ................................................................. 5
2.3.3. SECURITY .............................................................................................. 5
2.3.4. PERFORMANCE .................................................................................... 5
2.4. DATABASE REQUIREMENTS ............................................................ 5
2.5. TECHNOLOGIES ................................................................................... 5
2.6. SOFTWARE ............................................................................................ 5
2.7. HARDWARE .......................................................................................... 5
2.7.1 SERVER .................................................................................................. 5
2.7.2 CLIENT ................................................................................................... 5
2.8. END USER ASPECT ............................ Error! Bookmark not defined.
2.9. ANALYSIS ............................................................................................... 6

3. Design ............................................................. Error! Bookmark not defined.


3.1. ER DIAGRAM ...................................... Error! Bookmark not defined.
3.2. USE CASE DIAGRAM ........................... Error! Bookmark not defined.
3.3. DATA FLOW DIAGRAM .................... Error! Bookmark not defined.
3.4. SEQUENCE DIAGRAM......................... Error! Bookmark not defined.
3.5. DATABASE DIAGRAM .................... Error! Bookmark not defined.
3.5.1. TABLE: ................................................ Error! Bookmark not defined.
3.5.2. TABLE: USER & USER PROFILE ...... Error! Bookmark not defined.
3.5.3. TABLE: FRIEND REQUEST ............... Error! Bookmark not defined.
3.5.4. TABLE: STATUS UPDATE ................. Error! Bookmark not defined.
3.5.5. TABLE: MOVIE ................................... Error! Bookmark not defined.
3.5.6. TABLE: RATING ................................. Error! Bookmark not defined.
3.5.7. TABLE: LIKE ....................................... Error! Bookmark not defined.
3.5.8. TABLE: COMMENT ............................ Error! Bookmark not defined.
3.5.9. TABLE: COUNTRY ............................. Error! Bookmark not defined.
3.5.10. TABLE: STATE .................................... Error! Bookmark not defined.
3.5.11. TABLE: CITY ....................................... Error! Bookmark not defined.
3.5.10. TABLE: USER LOCATION ................. Error! Bookmark not defined.
3.5.11. TABLE: CITY ....................................... Error! Bookmark not defined.

4. USER INTERFACES ................................. Error! Bookmark not defined.


4.1. RATING SYSTEM .............................. Error! Bookmark not defined.
4.2. RECOMMENDATION SYSTEM ....... Error! Bookmark not defined.
4.3. SOCIAL NETWORK .......................... Error! Bookmark not defined.

5. SCREENSHOT ................................................. Error! Bookmark not defined.

6. FUTURE PROSPECTUS ................................. Error! Bookmark not defined.

7. REFERENCES ................................................. Error! Bookmark not defined.


1. INTRODUCTION

1.1. PROJECT OVERVIEW

It is an online movie recommender system to recommend you movies based on


end-users previews likes and rated movies, without wasting so much time in
manual searching. Basically, this system is a collection of three system i.e.
Movie Rating System, Recommendation System and Social Networking
website.
The main objective of this web based system is to efficiently evaluate the
movies for end-users which they wants to see next through a fully automated
system that not only saves lot of time but also gives the fast and accurate results.
Users also can search movies according to this genre.

This system will allow user to rate different movies or to post review on movies.
If any movie is not rated by the user then recommendation will come according
to the users search history. Also, if there is not any movie in search history then
user will be recommended for movies according to trending movies.

It also includes a feature to upload movie detail if there is no movie with the
same name, end-user can add-movies with the form given to add a new movie in
database. The whole process will help user to watch those movies which they
may like without wasting time to download or pay for a movie.

1.2. PURPOSE

Accurate Recommendations

Semantic Searching

Sharing on Social Network

No need to switch to other websites

1.3. SCOPE:

This project would be very useful for a person who loves watching movies in
their free time. So, he doesnt have to waste so much time to find movies
manually. The recommendation system will help to find them a movie with their
interest.

1.4. DEFINITIONS, ACRONYMS

The sub-section provides the definitions of all terms, acronyms, and abbreviations
used in this document.
S.No. Terms/Acronyms Description

1. The user mostly will appear for the movie recommendation and
End-User
social networking.

2. Another user mostly faculty member, lecturer or examiner who


Admin
posts set of questions, the available options and correct answers.

2. Functional or Specific Requirements :-


Required software is for movie recommendations and social networking. The
system should satisfy the following requirements.

1.1. External Interface Requirements

1.1.1. Hardware Interfaces

Server side hardware:

Hardware recommended by all the software needed.

Communication hardware to serve client requests

Client side hardware:

Hardware recommended by respective clients operating system and web


browser.

Communication hardware to communicate the server.

1.1.2. Software Interface

Server side software:

USB Web server software

Server side scripting tools: Python, JavaScript, HTML, Jquery


Database tools: SQLite

Compatible operating system: Till Window 8

Client side software

Web browser supporting JavaScript, i.e., Microsoft Windows XP and above

1.1.3. Communication Protocol

Following protocols are required to be permitted on the server side

HTTP incoming request

HTTPS incoming request if secure gateway is implemented

Following protocols are required to be permitted on the client side

HTTP outgoing request

HTTPS outgoing request if secure gateway is implemented

NON FUNCTIONAL REQUIREMENTS

System should be able handle multiple users

Database updating should follow transaction processing to avoid data inconsistency.

1.1 Software System Attributes

Browser Compatibility
The project being web based required compatibility with at least the popular web browsers.
Microsoft Windows XP and above, Linux and Macintosh being the current popular operating
system and Microsoft Internet Explorer, Mozilla Firefox, Opera, Safari and Google Chrome
being the currently popular web browsers.

1.2 Globalization Support


The system will mostly be in US English, although the questions and their options may not be in
US English. Hence the questions and their options are to be in Unicode format.

1.3 Performance
The system would be used by multiple users at a time and may grow as time passes; the system
would need to implement multithreading to achieve acceptable performance. Further a database
connection pool may also be required for assigning faster database connection.

SOFTWARE REQUIREMENT

1.1 DATABASE REQUIREMENT

Database fields for questions and respective options must be in Unicode format to handle non
English characters

1.2 TECHNOLOGY

This section lists all the technologies for the web based system.

PHP scripting for server side scripting as it has a very strong support for HTML and
SQLite.

HTML as database format: The database performance requirements are not very high
and the ability to have custom fields in case the quiz creator needs to add more than
expected answer options. This is limited in any other database management system where
we have to first specify the maximum number of fields.

1.3 SOFTWARE

Pycharm for Python, HTML and CSS coding.

HARDWARE REQUIREMENT

The recommended hardware specified by the respective software would suffice the needs. The
memory and processing power needed would increase as the number of users increase. The
estimated hardware requirements are as specified.

SERVER
The minimum hardware as recommended by all of the software required on server side say web
server, operating system and development software

Processing speed of 1.6 GHz

1 GB of RAM

Network interface
CLIENT
The minimum hardware as recommended by all of the software required on client side say web
browser, operating system

Minimum hardware depending on the operating system used

True color visual display unit

User peripherals for better interaction

2.1.1. Keeping history of the searched movies by the end-user.

1.2. External Interface Requirements

1.2.1. Hardware Interfaces

Server side hardware:

Hardware recommended by all the software needed.

Communication hardware to serve client requests

Client side hardware:

Hardware recommended by respective clients operating system and web


browser.

Communication hardware to communicate the server.


1.2.2. Software Interface

Server side software:

USB Web server software

Server side scripting tools: Python, JavaScript, HTML, Jquery

Database tools: SQLite

Compatible operating system: Till Window 8

Client side software

Web browser supporting JavaScript, i.e., Microsoft Windows XP and above

1.2.3. Communication Protocol

Following protocols are required to be permitted on the server side

HTTP incoming request

HTTPS incoming request if secure gateway is implemented

Following protocols are required to be permitted on the client side

HTTP outgoing request

HTTPS outgoing request if secure gateway is implemented


Non-Functional Requirements

System should be able handle multiple users

Database updating should follow transaction processing to avoid data inconsistency.

1.1 Software System Attributes

Browser Compatibility
The project being web based required compatibility with at least the popular web browsers.
Microsoft Windows XP and above, Linux and Macintosh being the current popular operating
system and Microsoft Internet Explorer, Mozilla Firefox, Opera, Safari and Google Chrome
being the currently popular web browsers.
1.2 Globalization Support
The system will mostly be in US English, although the questions and their options may not be in
US English. Hence the questions and their options are to be in Unicode format.

1.3 Performance
The system would be used by multiple users at a time and may grow as time passes; the system
would need to implement multithreading to achieve acceptable performance. Further a database
connection pool may also be required for assigning faster database connection.

1.1 Database Requirements

Database fields for questions and respective options must be in Unicode format to handle non
English characters

1.2 Technologies

This section lists all the technologies for the web based system.

PHP scripting for server side scripting as it has a very strong support for HTML and
SQLite.

HTML as database format: The database performance requirements are not very high
and the ability to have custom fields in case the quiz creator needs to add more than
expected answer options. This is limited in any other database management system where
we have to first specify the maximum number of fields.
1.3 Software

Pycharm for Python,HTML and CSS coding.

Hardware Requirement

The recommended hardware specified by the respective software would suffice the needs. The
memory and processing power needed would increase as the number of users increase. The
estimated hardware requirements are as specified.

SERVER
The minimum hardware as recommended by all of the software required on server side say web
server, operating system and development software

Processing speed of 1.6 GHz

1 GB of RAM

Network interface

CLIENT
The minimum hardware as recommended by all of the software required on client side say web
browser, operating system
Minimum hardware depending on the operating system used

True color visual display unit

User peripherals for better interaction

Administrator Aspect:

1.1.1. Taking database backup.


1.1.2. Editing/Deleting/Creating the database.
1.1.3. Adding and expelling movies from the database.
1.1.4. Changing the super password.

1.2. End user Aspect:


1.2.1. Request registration.
1.2.2. Logging into system.
1.2.3. Edit user information.
1.2.4. Complete the user profile.
1.2.5. Rate the movies.
1.2.6. If end-user rated the sufficient movies, to get the recommendations,
then should get the recommended movies.
1.2.7. End-user can share the recommended movies on social network.
1.3. Analysis
1.3.1. Authenticating users based on username and password.
1.3.2. Recording the rate given by user for recommendation system.
1.3.3. Checking whether the number of rated movies is sufficient for the
recommendations.
Reading other Recommendation System

1. Jinni
It includes semantic search which make it best. User can input
terms like movies that have gangsters and the site will return the
movies that match with the query.

2. Taste Kid (More than good movie recommendation)


You input a film you like and it returns that offer similar action to
your favorites. But it goes beyond just movies. If you really like
the God Father , Taste Kid will fills user in on what kind of band
you will like to listen to , books you want to read and other stuff
related to that film.

3. Nanocrowd
The site goes well beyond a simple results page. Nanocrowd
allows you to drill down into a more refined search with the help
of a three word nano genre. On the result page you click the three
word category you prefer, based on keywords related to the movie
you input into the search field. Even better, the films it displays are
not always blockbuster.

4. Clerkdogs

5. Criticker (Unique)

6. IMDb
IMDb automatically (without asking for the rating) recommends
the similar films to the movie you searched for. At the bottom of
your web-page the Recommendation section explains that if you
liked the respective films, you will like the handful of other films
being displayed, based on information gathered from IMDb
database, which examines the film to find the similarities and
differences.

7. Flixster

8. Movielens
Movielens is ugly. But what it lakes in beauty, it makes up with a
great recommendation engine that calculates your taste based on
rating to films you have seen before. Once you rate 15 movies, it
returns recommendations that were accurate and certainly more
relevant than result from Netflix.

9. Rotten Tomatoes

10.Netflix

Design:-
ER- Diagram
DATA FLOW DIAGRAM
USE CASE DIAGRAM
SEQUENCE DIAGRAM
Database Designs:-

A database is an inherent collection of data with some inherent meanings, designed,


built, and populated with data for a specific purpose. The following guidelines are been
followed during the database design:

Descriptive names for the tables, columns and indexes


Singular names for tables and columns
Proper data type for each column

USER & USER PROFILE

FIELD TYPE NULL DESCRIPTION


user_id INT No Unique id of
users
First Name Char No First name of the
user
Last Name Char No Last name of the
user
Username Char No Username of the
user using which
login will be
provided
Email Id Email No Email Id of the
user
Password Char No Password for the
website login
Picture Image Yes Profile picture of
the user
Date of Birth Datetime Yes Date of birth of
the user
FRIEND REQUEST MODEL

FIELD TYPE NULL DESCRIPTION


Request_id Int No Unique id for
request
Request_from FOREIGN No Used a foreign
KEY(USER) key of user to
which friend
request is sent
Request_to FOREIGN No Used a foreign
KEY(USER) key of user from
which friend
request is sent
Reqeust_status Int No Status of the
friend request
sent(waiting,
accept, delete,
block)
Action_by Int No By which user
friend request is
sent
Timestamp Datetime No Time at which
friend request is
sent
STATUS UPDATE

FIELD TYPE NULL DESCRIPTION


Status update Int No Unique id for
id post
Posted to Foreign No Used a foreign
key(USER) key of user to
which wall post
is going to post
Posted by Foreign No Used a foreign
key(USER) key of user by
which wall post
is going to post
Status Char No Post by the user
Timestamp Datetime No Time of the post
MOVIE

FIELD TYPE NULL DESCRIPTION


Movie id Int No Unique id of
movie
Title Char No Title of the
movie
Year Int No Year in which
movie was
released
Director Char Yes Director of the
movie
Writer Char Yes Write of the
movie
Star Cast Char No Star Casts of the
movie
Rating Float No Average rating
of the movie
Genres Char No In which genres
movies belongs
Summary Char Yes Summary of the
movie
Length Int No Length of movie
Image Image Yes Poster of movie
Timestamp Datetime No Time of movie
add in database
RATING

FIELD TYPE NULL DESCRIPTION


Rating id Int No Unique id of
rating
Movie Foreign No Used a foreign
key(MOVIE) key of movie on
which user going
to rate
Rate Float No The numeric
value rated by
user
User Foreign No Used a foreign
key(USER) key of user by
which movie is
rated
Timestamp Datetime No Time of rating

LIKE

FIELD TYPE NULL DESCRIPTION


Like id Int No Unique id of like
Liked Status Foreign No Status on which
key(STATUS) like has been
clicked
Liked by Foreign No User who liked
key(USER) the post
Timestamp Datetime No Time of like
COMMENT

FIELD TYPE NULL DESCRIPTION


Comment id Int No Unique id of
comment
Comment Foreign No Used a foreign
Status key(STATUS) key of status on
which user going
to comment
Commented Foreign No Used a foreign
by key(User) key of user who
is commenting
on the status
Comment Char No Comment done
by the user
Timestamp Datetime No Time of
comment

COUNTRY

FIELD TYPE NULL DESCRIPTION


Coutry id Int No Unique id of
country
Country Char No Name of the
country
Timestamp Datetime No Time of creating
country

STATE

FIELD TYPE NULL DESCRIPTION


State id Int No Unique id of
country
State Char No Name of the
state
Timestamp Datetime No Time of creating
state

CITY

FIELD TYPE NULL DESCRIPTION


Ciy id Int No Unique id of city
City Char No Name of the city
Timestamp Datetime No Time of creating
city

USER LOCATION
FIELD TYPE NULL DESCRIPTION
Location id Int No Unique id of
country
User Foreign No Used a foreign
key(Country) key of user
whose location is
adding
User country Foreign No Used a foreign
key(Country) key of country to
select a country
from list
User State Foreign No Used a foreign
key(State) key of state to
select a state
from list
User City Foreign No Used a foreign
key(City) key of city to
select a city from
list
Timestamp Datetime No Time of creating
country
USER QUALIFICATION

FIELD TYPE NULL DESCRIPTION


Qualification Int No Unique id of
id country
User Char No Used a foreign
key of user
whose
qualification is
adding
User high Char No Users high
school school name
User Char Yes Users
intermediate intermediate
school name
User college Char Yes Users college
name
User reaction Boolean No All fields are
filed or not
Timestamp Datetime No Time of creating
country

Rating system:
DEFINITION

A rating system is an instrument for forming and validating a judgment on the relevance,
performance and success of a program or project through the use of a scale with numeric,
alphabetical and/or descriptive codes. As part of the broader monitoring and evaluation
framework, it has the potential to provide critical inputs to decision-making at various
management levels, support accountability, and enhance learning.

ESTABLISHING A RATING SYSTEM

The following factors need to be considered in establishing a rating system.

Need for clear definitions of the rating categories.


The rating categories must be clearly differentiated to facilitate choices. Extreme ratings
should be avoided (e.g., "failure") because the controversy associated with those ratings
discourages their use.
Odd versus even number of categories.
There should be an even number of categories to prevent the tendency of raters to opt for
the middle category.
Numeric, alphabetical or descriptive categories.
To facilitate the statistical analysis of performance trends, numeric codes with
corresponding descriptions must be used. However, to verify the ratings, a different type
of code (preferably alphabetical) should be used for the overall rating of the programme
or project.

Mechanisms are needed to ensure the reliability of the rating system. The system must be
continuously tested and refined within the relevance-performance-success framework for
monitoring and evaluation. The questions need to be reviewed so that the specific criteria of
relevance, performance and success are captured. To the extent feasible, the key stakeholders
(i.e., target groups, program or project managers, Government and UNDP) must rate the program
or project as a way of obtaining their views and as part of a validation process that can help to
ensure the reliability of the rating system.

USES OF THE RATING SYSTEM

The rating system must be used for the monitoring and evaluation of both program and
projects. It should thus be treated as an essential component of monitoring and evaluation
reports. For monitoring, the rating system should be built into field visit reports and
annual and terminal reports. For evaluation purposes, the rating system will continue to
be incorporated in the program or project evaluation information sheet (PEIS), which
evaluators are required to submit along with their evaluation reports. Data from the PEIS
will continue to be entered in CEDAB.
Collaborative Filtering

You know that the low-tech way to get recommendations for products, movies, or
entertaining web sites is to ask your friends. You also know that some of your friends
have better taste than others, something youve learned over time by observing whether
they usually like the same thing as you. As more and more options become available, it
becomes less practical to decide what you want by asking a small group of people, since
they may not be aware of all the options. This is why a set of techniques called
collaborative filtering was developed.

A collaborative filtering algorithm usually works by searching a large group of people


and finding a smaller set with taste similar to yours. It looks at the other things they like
and combines them to create a ranked list of suggestions. There are several different ways
of deciding.

A dictionary of movie critics and their ratings of a small set of movies

critics= {Lisa Rose: {Lady in the water: 2.5, Snake on a plane: 3.5, Just My
Luck: 3.0, Superman Returns: 3.5, You, Me and Dupree: 2.5, The Night
Listener: 3.0},

Gene Seymour: {Lady in the water: 3.0, Snake on a plane: 3.5, Just My Luck:
1.5, Superman Returns: 5.0, You, Me and Dupree: 3.0, The Night Listener:
3.5},

Michael Phillips: {Lady in the water: 2.5, Snake on the plane: 3.0, Superman
Returns: 3.5, The Night Listener: 4.0},

Claudia Puig: {Snake on a plane: 3.5, Just My Luck: 3.0, The Night Listener:
4.5, Superman Returns: 4.0, You, Me and Dupree: 2.5,},

Mick LaSalle: {Lady in the water: 3.0, Snake on a plane: 4.0, Just My Luck:
2.0, Superman Returns: 3.0, The Night Listener: 3.0,You ,Me and Dupree:
2.0,},
Jack Matthews: {Lady in the water: 3.0, Snake on a plane: 4.0, The Night
Listener: 3.0, Superman Returns: 5.0, You, Me and Dupree: 3.5},

Toby: {Snake on a plane: 4.5, You, Me and Dupree: 1.0, Superman Returns:
4.0}}

This dictionary uses a ranking from 1 to 5 as a way to express how much each of these
movie critics (and I) liked a given movie. Using a dictionary is convenient for
experimenting with the algorithm and for illustrative purpose.

FINDING SIMILAR USER

After collecting data about the things people like, you need a way to determine how
similar people are in their taste. You do this by comparing each person with every other
person and calculating the similarity score.

EUCLIDEAN DISTANCE SCORE

One very simple way to calculate a similarity score is to use a Euclidean distance score,
which takes the items that people have ranked in common and uses them as axes for a
chart. You can then plot the people on that chart and see how close together they are, as
shown in figure below.
Toby has been plotted at 4.5 on the Snakes axis and at 1.0 on the Drupee axis. The closer
two people are in the preferences are. Because the chart is two-dimensional, you can only
look at two rankings at a time, but the principle is the same for the bigger set of rankings.

To calculate the distance between Toby and LaSalle in the chart, take the differences in
each axis, square them and add them together, then take the square root of the sum,

This will calculate the distance, which will be smaller for people who are more similar.
However, you need a function that gives higher values for people who are similar. This
can be done by adding 1 to the function and inverting it.
The new function always returns a value between 0 and 1, where values of 1 means two
people have identical preferences. You can put anything together to create a function for
calculating similarity.

PEARSON CORRELATION SCORE

A slightly more sophisticated way to determine the similarity between peoples interests
is to use a Pearson correlation coefficient. The correlation coefficient is a measure of how
well two sets of data fit on a straight line. The formula for this is more complicated than
the Euclidean distance score, but it tends to give better results in situations where the data
isnt well normalized for example, if critics movie ranking are routinely more harsh
than average.

To visualize this method, you can plot the ratings of two of the critics on a chart on a
chart, as shown in figure below. Superman was rated 3 by Mick LaSalle and 5 by Gene
Seymour, so it is placed at (3, 5) on the chart.
You can also see a straight line in the chart. This is called the best-fit line because it
comes as close to all the items on the chart as possible. If the two critics had identical
ratings for every movie, this line would be diagonal and would touch every item in the
chart, giving a perfect correlation score of 1. In the case illustrated, the critics disagree on
a few movies, so the correlation score is about 0.4. Figure below shows an example of a
much higher correlation, one of about 0.75.
One interesting aspect of using the Pearson score, which you can see in the figure, is that
it corrects for grade information. In this figure, Jack Matthews tends of give higher score
than Lisa Rose, but the line still fits because they have relatively similar preferences. If
one critic is inclined to give higher scores than the other, there can still be perfect
correlation if the difference between their scores is consistent. The Euclidian distance
score described earlier will say that two critics are dissimilar because one is consistently
harsher than the other; even if there testes are very similar. Depending on your particular
application, this behavior may or may not be what you want.
SOCIAL NETWORK

LOGIN FAILED:
If the username and password typed by the user are not matching the database
values then this frame is called. This frame has only two features namely one
is the text panel displaying the message Invalid login details
REGISTRATION:
If the user is new he will click on the register link then he will provide various
information such as first name, last name, profile picture and date of birth
after submitting these information successfully his will be created in the
database, now he can login as other members.
HOMEPAGE:
When the user successfully log in to the MOVIEMANIA they are directed
towards the homepage they first see their name after the welcome message to
the user. On the homepage there is the link for notification, when user click on
the notification then all friend request that have been sent will be visible there.
SEARCH:
Search consists of the user searching for the known movie on the database.
Search will allow user of the MOVIE MANIA to find the movies if it is not
displayed on the front page. For searching movies the user have to input the
first name of the user they want to search and the real time system will display
all results related to the user query.
SEND FRIEND REQUEST:
It is an option in which the user will be able to send the friend request. The
user will be able to send the friend request after searching the name on the
friend suggestion list.
RECEIVE FRIEND REQUEST:
User will be able to see friend request when the user click on the notification
link. When the user hover to the notification then the notification container
slides down that consist of the friend request list. It has the button add
friend and above it contains the name of the person which sends the friend
request. If user clicks on add friend button then the record is stored in the
database.
FFRIENDS:
When user accepts the friend request that is sent to him then the sender and
acceptor of the friend request becomes friends.
POST:
When the user wants to share information and feelings with all his friends
than the user will post the information or the feeling which will be seen by all
his friends. There will be two options for his friend to like the post or to
comment on the post. The post button will be provided on the Social Network
page there will be a text area in which user will input the information or the
feeling when the user post on the post button the post share with all friends.
On every there will be two options one is to like or other is to comment on it.
COMMENT:
After every post there will be option for comment. A comment is done on the
post to tell about the feelings on the post. A comment will be visible to all the
persons who are able to view the post. To comment on the post input the text
on the text area and click the named comment then the values will be
registered in the database.
LIKE:
As like the comment there is also an option to like the post. To like an post there is a
link name as like will be given when the user clicks on the link the count of the
number is increases by one.
TESTING:-

Testing plays a critical role in quality assurance for software due to limitation of the
verification for the previous phases, design and requirement fault also appear in the
code. Testing is used to detect the errors, in addition to the error produce during
coding phase.

Testing is dynamic method for verification and validation, where the system is to be
tested is executed and behavior of the system is observed. Due to this testing the
failure of the system can be observed from which the presence of fault can be
reduced. However, separate activities have to be performed to identify the fault.

There are two method of testing: Functional and Structural. In functional testing,
the internal logic of the system under testing is not considered and the test cases are
added from the specification or requirement. It is often called Black Box Testing .
Equivalence class partitioning, boundary analysis, and cause effect graphing are
example of method for selecting test cases for functional testing. In structure testing,
the test cases are decided entirely on the internal logic of the program of module
being tested.

As the goal of testing is to detect any error in the programs different flavour of testing
are often used. Unit testing are used to test a module or a small collection of module
and the focus is on detecting coding error in modules.

SYSTEM TESTING:-

Here the system testing involved is the most widely used testing process consist of
five stages as soon in fig. In general, the sequence of testing activities is component
testing, integration testing then user testing.
Testing is the process of detecting error. Testing performs a very critical role for
quality assurance and for ensuring the reliability of software. The results of testing are
used latter on during maintenance also.

Testing is vital to the success of the system. The system makes a logical assumption
that if the part of the system is correct, the goal will be successfully achieved. In
adequate testing or non-testing leads to error that may not appear until months or even
years later (remember the New York three day power failures due to a miss place
Break statement).

This creates two problems:-

1- The time lag between the cause and the appearance of the system.
2- The time interval effect of the system error on the file and the records on the system.

A small error can conceivably explode into a much larger problem. Effective testing
early in the process translate directly into long term cost saving form a reduce number
of error.

Another reason for system testing is its utility as a user oriented vehicle before
implementation. The best program is birthless if it does not meet the user
requirements. Unfortunately, the user demands are often compromise by effort to
facilitate program or design efficiency in term of processing time or design
efficiency.

Thus in this phase we want to test the code we write. We needed to know if the code
compiled with the design or not? Weather the code gave the desire output on given
inputs? Weather it was ready to be installed on the user computer or some more
modifications where needed?

TESTING OBJECTIVE:

The main objective of testing is to uncover a host of error, systematically and with
minimum effort and time. Starting formally-

1- Testing is the process of executing a program with intend of finding an error.


2- A successful test is one that uncovers an as yet undiscovered error.
3- A good test case is one that has a high probability of finding error, if it exists.
4- The tests are inadequate to detect possibly presents errors.
5- The software more or less conforms to the quality and reliable standards.

LEVELS OF TESTING:

In order to uncover the error present indifferent phase, we have the concept of level of
testing. Basic levels of testing are:

Client Needs Acceptance testing

Requirements System testing

Design Integration testing

Code Unit testing

UNIT TESTING:-

Unit testing focuses verification effort on the smallest unit of software i,e. the
module. Using the detailed design and the process specification, testing is done to
uncover errors within the boundary of the module. All modules must be successful in
the unit test before the start of the integration testing begins.

In this project each service can be thought of a modules. There are so many modules
like Login, HR Department, interviewer section, etc. Each module has been tested by
giving different sets of inputs. When developing the modules as well as finishing the
development, the module works without any error. The inputs are validated when
accepting them from the user.
INTEGRATION TESTING:-

After unit testing, we have to perform integration testing. The goal are is to see if
modules can be integrated properly, the emphases being on testing interfaces between
modules. This testing activity can be considered as testing the design and hence the
emphasis on testing module interactions.

In this project the main system is formed by integrating all the modules. When
integrating all the modules I have checked whether the integration effects working of
any of the services by giving different combinations of inputs with which the two
services run perfectly before integration.

SYSTEM TESTING:-

Here the entire software system is tested. The reference document for this process is
the requirements document, and the goal is to see if software meets its requirements.

Here entire HRRP has been tested against requirements of project and it is checked
whether all requirements of project have been satisfied or not.

ACCEPTENCE TESTING:-

Accepting testing is performed with realistic data of the client to demonstrate that the
software is working satisfactorily. Testing here is focused in external behavior of the
system, the internal logic of program is not emphasized.

Test cases should be selected so that the largest number of attributes of an


equivalence class is exercised at once. The testing phase is an important part of
software development. It is the process of finding errors and missing operations and
also a complete verification to determine whether the objectives are met and the user
requirements are satisfied.

WHITE BOX TESTING

This is a unit testing method, where a unit will be taken at a time and tested
thoroughly at a statement level to find the maximum possible errors.
I tested step wise every piece of code, taking care that every statement in the code is
executed at least once. The white box testing is also called Glass Box Testing.

I have generated a list of test cases, sample data, which is used to check all possible
combinations of execution paths through the code at every modules level.

White-Box test focuses on the program control structure. Test cases are derived to
ensure that all statement in the program control structure. Test cases are derived to
ensure that all statement in the program has been executed at least once during testing
and that all logical conditions have been exercised. Basis path testing, a white box
technique, makes use of program graphs (or graph matrices) to derive the set of
linearly independent test that will ensure coverage. Condition and data flow testing
further exercising degrees of complexity.

BLACK BOX TESTING

This testing method considers a module as a single unit and checks the unit at
interface and communication with other modules rather getting into details at
statement level. Here the module will be treated as a block that will take some input
and generate output. Output for a give set of input combinations are forwarded to
other modules.

Black-box test are designed to uncover errors functional requirement without regard
to the internal working of a program. Black-Box testing techniques focus on the
information domain of the software, deriving test cases by partitioning the input and
output domain of a program in manner that provided through test coverage. The
black-box test is used to demonstrate that software functions are operational, that
input is properly produced, and that the integrity of external information are
maintained. A black-box test examines some fundamental aspect of a system with
little or no regard for the integral logical structure of the software.

Graph based testing method explore the relationship between and behavior of
program objects. Equivalence partitioning divides the input classes of data are likely
to exercise specific software function. Boundary values analysis probes the programs
ability to handle data at the limits of acceptability.

TEST INFORMATION FLOW

A strategy for software testing may also be viewed in the context of the spiral. Unit
testing begins at the vortex of the spiral and, concentrates on each unit, component of
the software as implemented in source code. Testing progresses moving outward
along the spiral to integration testing, where the focus is on designed the construction
of the software architecture. Taking another turn outward on spiral, we encounter
validation testing, where requirements established as part of software requirements
analysis are validated against the software the has been constructed. Finally, we arrive
at system testing, where the software and other system elements are tested as a whole.
To test computer software, we spiral out along stream lines but broaden the scope of
testing with each turn.

Considering the process from a procedural point of view, testing within the context of
software engineering is actually a series of four steps that are implemented
sequentially. The steps are shown in figure, initially, test focus on each component
individually, ensuring that it functions properly as unit. Hence, the name is unit
testing. Unit testing makes heavy use of white-box testing techniques, increasing
specific paths in modules control structure to ensure complete coverage and
maximum error detection.
System Testing

Validation Testing

Integration Testing

Validation Testing

Code

Design

SYSTEM SECURITY

There are basically two types of security associated with this system:-

1- Physical security:-
Damage due to natural causes like earth w
System Engineering
Implementation:-

System implementation is the stage when the user has thoroughly tested the system and
approves all the features provided by the system. The various tests are performed and the
system is approved only after all the requirements are met and the user is satisfied.

The new system may be totally new; replacing an existing manual or automated system.
Or it may a major modification to an existing system. In the either case, proper
implementation is essential to provide a reliable system to meet organization
requirements. Successful implementation may not guarantee improvement in the
organization using the new system (that is a design question) ,but improper will prevent
it.

Implementation is process of having systems personal check out and put new equipment
to use, train users, install the new application and construct any files of data needed to use
it. This phase is less creative than system design. Depending on the size of the
organization that will be involved in using the application and the risk involve in its use,
system developer may choose to test the operation in only one area of the firm with only
one or two persons. Sometimes, they will run both old and new system in parallel way to
compare the results. In steel other situations, system developers stop using the old system
one day and start using the new one the next.

The implementation of the web based or LAN based network project has some extra steps
at the time of implementation. We need to configure the system according the
requirement of the software.

For the project we need to install and configure weblogicserver8.1, database server and
deployment directory for the project.

Aspects of implementation:-

The two aspects of implementation are:

1- Training personnel
2- Conversion procedures

Training:-

Even well designed and technically elegant systems can succeed or fail because of the
way they are used. Therefore the quality of the training received by the personnel
involved with the stem in various helps or hinders, and may event prevent, the successful
implementation of an information system.
Maintenance:-

Software maintenance is the last phase in the software engineering process that eliminates
errors in the working system during its work span and to tune the system to any variations
in its working environment. The system requires maintenance as there may be changes
and requirements in the organizational need , government policies, hardware and
software environment etc. often small system deficiencies are found as a system is
brought into operation and changes are made to remove them. System requirement may
be revised as a result of system usage or changing operational needs. Perhaps oversight
that occurred during the development process needs to be occurred. Often the
maintenance needs to be arises to capture additional data for storage in a database or in
transaction files or perhaps it may be necessary to add error detection features to prevent
system users from in adversely taking an unwanted action.

Maintenance of the system after it is installed in concerned with an additional factor in


hardware. Once the system is delivered and installed there is a brief warranty period
during which time the vendor is responsible for maintenance. This is typically a 90 day
period after that time the purchaser has the option of acquiring of maintenance from
various sources. Maintenance source excepting vendor is also available from companies
specializing in providing the service, called third party maintenance companies.

When the system is installed, it is generally used for long period. The average life of this
system is 4-6 years, with the eldest applications often is used for 10 years. The need for
debugging and correcting errors or failure on an emergency basic is comparatively low:
less than 20% of the task of correction. System and organization are in constant state of
flux; therefore the maintenance of the system also involved adoptions for earlier version
of software.

Approximately 20%of all maintenance work is performed to accommodate changes in


report, files and database. The greatest amount of maintenance work is for user
enhancement, improvement documentation and recording system components of greater
efficiency about 60% of all maintenance is for this purposed.
Following table summarized the broad classes of maintenance found in development of
sekkjob.com

Category Activity

1- Corrective Emergency fixes, routine debugging.


2- Adaptive Accommodation of changes to data and to hardware and software,
changes in the external environment.
3- Pre effective User enhancement, improved documentation recording of
computational efficiency, user recommendations for new capabilities.
4- Preventive Routine service of cleaning and adjusting the equipmet to prevent
breakdowns, future maintainability reliability enhancement , recovering design
information to improve the overall quality.

Maintainable Design:-

The points of reduce the needs for maintenance are:

1- More accurately defining the users requirements during the system development
assembling better system documentation.
2- Using more effective methods for designing process logic and communicating it to
project team members.
3- Making better use of existing tools and techniques.
4- Managing the system engineering process effectively.

The maintenance for Integrated Movie Mania was performed with the above mentioned
points as the underlying principles and according to the demands of the users.
USER QUALIFICATION

FIELD TYPE NULL DESCRIPTION


Qualification Int No Unique id of
id country
User Char No Used a foreign
key of user
whose
qualification is
adding
User high Char No Users high
school school name
User Char Yes Users
intermediate intermediate
school name
User college Char Yes Users college
name
User reaction Boolean No All fields are
filed or not
Timestamp Datetime No Time of creating
country
USER REGISTRATION FORM
LOGIN
PROFILE PAGE
HOMEPAGE MOVIES
SEARCH
SOCIAL NETWORK PAGE WITH
RECOMMENDATION
ADDING MOVIES FORM
SOCIAL NETWORK PAGE WITH STATUS
UPDATE FIELD
FRIEND SUGGESTION FIELD
FRIEND REQUEST ON THE TOP RIGHT
FUTURE PROSPECTUS

1. Linking with IMDB Movies


2. Chatting system in social network
3. Audio messages
4. Video Calling
5. Audio Calling
REFERENCES

HTML from W3SCHOOL


(https://www.w3schools.com/html/default.asp)
CSS from W3SCHOOL
(https://www.w3schools.com/css/default.asp)
BOOTSTRAP from W3SCHOOL
(https://www.w3schools.com/bootstrap/default.asp)
Python from COURSERA(www.coursera.org)
Django from YOUTUBE (www.youtube.com)

You might also like