Está en la página 1de 24

Software Requirements



Prepared by Rinkesh Gupta

Registration: 11401209

Section: K1423/B53

Lovely Professional University

Software Requirements Specification for <Linkedin>                     
Page 1

Table of Contents
Table of Contents ii

Revision History ii

1. Introduction 1

1.1 Purpose1

1.2 Document Conventions 1

1.3 Intended Audience and Reading Suggestions 1

1.4 Product Scope 1

1.5 References 1

2. Overall Description 2

2.1 Product Perspective 2

2.2 Product Functions 2

2.3 User Classes and Characteristics2

2.4 Operating Environment 2

2.5 Design and Implementation Constraints 2

2.6 User Documentation 2

2.7 Assumptions and Dependencies 3

3. External Interface Requirements 3

3.1 User Interfaces 3

3.2 Hardware Interfaces 3

3.3 Software Interfaces 3

3.4 Communications Interfaces 3

4. System Features 4

4.1 Flight Booking 4
Software Requirements Specification for <Linkedin>                     
Page 2

4.2 Hotel Booking 4

4.3 Holiday Booking………………………………………………………………………….........4

     4.4 Bus Booking 4

4.5 Train Booking 4

4.6 Flight and Hotel Combo4

4.7 Customer Services 4

4.8 Login | Signup 4

4.9 Hotel Booking 4

5. Other Nonfunctional Requirements 4

5.1 Performance Requirements 4

5.2 Safety Requirements 5

5.3 Security Requirements 5

5.4 Software Quality Attributes 5

5.5 Business Rules 5

6. Other Requirements 5

Appendix A: Glossary 5


LinkedIn is the world's largest professional network with hundreds of millions of

members, and growing rapidly. Their mission is to connect the world's professionals
to make them more productive and successful. It can help you:
1. Establish your professional profile and control one of the top search results for
your name.
2. Build and maintain your professional network.
3. Find and reconnect with colleagues and classmates.
Software Requirements Specification for <Linkedin>                     
Page 3

4. Learn about other companies, and get industry insights.

5. Find other professionals in the same industry using groups.
6. Share your thoughts and insights through LinkedIn's long-form publishing
7. Tap into the knowledge of your network.
8. Discover new career opportunities by searching for jobs.

1.1 Purpose
LinkedIn is a business-focused social networking site that launched in 2003. Its main
purpose is to help people network professionally. The basic service is free.

The site lets you find other business associates, clients, and colleagues whom you
already know. You "connect" with them through the site, and they then become part
of your network.

Once you've connected with a person, you will then have access to their list of
connections – this is called your "extended network." You can request an introduction
to people in your extended network through your mutual contact.

LinkedIn also provides other features including the ability to set up and join groups,
and a jobs section where members can advertise open positions or apply for jobs.

1.2 Document Conventions

Font: TNR 11

1.1 Intended Audience and Reading Suggestions

LinkedIn is perhaps the most overlooked social network. But overall it is

actually more popular than Twitter, generally considered the number two social
Software Requirements Specification for <Linkedin>                     
Page 4

network in the U.S. The latest data shows a higher proportion of U.S. adults on the
internet (22%) have used LinkedIn, compared to the percentage who have used

22% of internet users 18 and older have used it, compared to the 19% who have
used Twitter.

Thirty-eight percent of college-educated adult web users are on LinkedIn,

compared to only 16% of those with some college education.

Social network sweet spot is among 30-to 49- years old enough to have their
careers on track - with 27% of U.S. internet users in this age bracket using

1.4 Definitions, acronyms, abbreviations

Here are a few useful terms you should know when using LinkedIn:

 Connections – Connections are other registered users who you know personally
on LinkedIn. Although you can invite anyone to be a connection, they will need to set
up an account to use the site.

 Second-degree connections – These are the connections that your connections

have. For example, you're friends with Bill, who is directly connected with his boss.
Bill's boss is a second-degree connection for you.
 Third-degree connection – Any connections from your second-degree connects
are third-degree connections. So, Bill's boss's connections would be your third-degree

 Profile page – This is your personal page on LinkedIn. All registered users with
LinkedIn can view it (unless you set it to be a private page). Your profile page can list
your education, past work history, current and past projects, groups and associations,
and more. Users can also forward your profile page to contacts on their lists. You can
also make your profile page "public" so that anyone (even people not on LinkedIn)
can view it.

 Recommendations – Your connections can write recommendations, or

testimonials, for your profile. These can be a powerful testament to your business and
Software Requirements Specification for <Linkedin>                     
Page 5

professional skills.

 Introductions – Introductions are when a third party introduces two people who
weren't currently connected. For instance, your colleague Sue and your client Dan
don't know each other. You think Sue could help solve a problem that Dan is having
with one of his projects, so you introduce Sue and Dan through LinkedIn.
Introductions are simply a way to bring people together on the site.

1.5 Scope
Eight years after its launch and a few short months after its $4.3 billion IPO
valuation, LinkedIn has quickly become the de facto tool for passive job searches,
living just on the fringe of the pure play job sites like The Ladders, Monster, and
CareerBuilder. In its blander sense, LinkedIn operates as a means for collecting
contacts and staying abreast of who is now working where. As for everyday business,
it has not woven itself into the social fabric in the same way as Facebook or even
Twitter. And whereas Facebook has managed to straddle the line between
desktop and mobile, LinkedIn has struggled.

Overall Description

2.1 Product Perspective

1. ALPHA Release - A Work in Progress (WIP) /unstable software release of a
product is characterized as an ALPHA. This product is expected to have basic issues,
bugs, even unforeseen crashes and is under active development by the R&D
Software Requirements Specification for <Linkedin>                     
Page 6

teams.This ensures that a usable version of a product goes to the BETA stage with a
known list of punch points – which need to be resolved at the BETA stage.

2. BETA Release - A software release reaches the BETA stage once it has attained
stability in terms of critical punch points being resolved as per the test reports and
regression cycles. A BETA software release aims to fix the other major issues and
known bugs as part of frequent software release drops. At this stage, any feature gaps
with respect to the standards should also be addressed.

3. CANDIDATE Release - A software release reaches the maturity to be a

production CANDIDATE once all its known issues, and fixes reported by the quality
assurance team have been resolved. In order to evolve from this stage to become a
GA release, the software should address critical features such as high availability,
fault tolerance & load balancing. Once these criterion are met, the software evolves to
GA maturity.

4. GA (GENERAL AVAILABILITY) Release - A software release which has attained

GA maturity is fit for production quality after all the necessary commercialization
activities have been completed and a software product is available for purchase in the

1.2 Product Features

Listed below are my Top 5 features of Linkedin

1) Posting Updates
This feature allows you to broadcast your interests and point of view. your contacts
would appreciate seeing the content and you will be providing a point of view based
on your unique set of experiences and expertise.

2) News "Signals"
Signals are a quick way to learn how many of your contacts are currently active on
LinkedIn, which may mean that those contacts have some spare time. Located as the
Software Requirements Specification for <Linkedin>                     
Page 7

third option in the drop down "News" menu, "Signals" lets you see your contacts'
activity in real-time. Check it out every now and then to get a sense of how people are
using LinkedIn and to understand who might be free for a quick catch-up.

3) Tags
Tags are another lesser known feature that allows you to organize your
connections however you see fit. LinkedIn automatically organizes your
contacts based on company, location, industry, recent activity, and your
relationship with that person. Additionally, you're also able to create new tags so
that you can organize your contacts as you wish.

4) "Get Introduced"
LinkedIn's "Get introduced" feature, located on the drop down to the right of
'Connect', allows you to send a message to one of your current contacts that is
connected with the targeted professional. Yet, be sure to know that mutual
connection well and clearly state sound reasons why you'd like your contact to
put his reputation at stake to introduce you to one of his connections.
NOTE: If you have a basic account (the free one), you're limited to 5
introductions. So, if that relates to you, choose your battles wisely.

5) Personalizing Messages When Connecting

Most of the connections people receive include the stock LinkedIn message
attached. I don't have proof to back that fact up, but I'd be willing to bet it's true.
When you personalize a message, you're creating a more memorable connection
between yourself and the professional you're trying to add as a contact.

1.3 User classes and characteristic

Characteristics: It is a very popular job searching platform with many other
flexibilities and features
Software Requirements Specification for <Linkedin>                     
Page 8

Customer:-simply users of the Linkedin website and its database ,people of all sort
are its part of environment like skilled people, unskilled people who are job seekers.
And some big corporate companies who recruit professionals using this website.

Maintenance:- is to be kept in mind to assure quick loading of website on any client

machine be it desktop, mobile or any other device. This can be achieved by maintain
its server properly.
Software Requirements Specification for <Linkedin>                     
Page 9
Software Requirements Specification for <Linkedin>                     
Page 10

2.4 Operating Environment

The hardware, software and technology used should have following specifications:

 Ability to manage huge traffic of request and response.
 Ability to keep the data safe and durable.

 Should have a strong secure protection against external hacks.

 Should be low on server resources to quickly respond to user’s request.

 Should have a dedicated server to handle the huge request from all users
 Server should be kept in a cold clean place
 There should be a 24 Hour power backup facility
 Ability to connect to connect to other networks when required

 Ability to adapt to new standards of internet
 Ability to add new component as required

1.4 Design and Implementation Constraints

For Login

Validate Username:
Software Requirements Specification for <Linkedin>                     
Page 11

 Validate that the username column is not blank

 Validate the format of that particular username
 Validate that there is no unrequited special character

Validate Password:

 Validate that the password is not blank

 If Password is blank, prompt error message "Please provide Password"
 Validate that the password entered matches the password of the given username
 Validate that the password entered does not contain any malicious scripts like
SQL Injection
 If password does not match, prompt error message "Password is Incorrect"

Recover Password:

 Provides a reset link for password in case the user has forgot his password
 Password reset link is sent to the email address on which linkedin ID is made
 Validate that the reset link is from a particular email address and not from any
third party software
 Provides with an option to set new password over the previous one

1.5 Assumptions and Dependencies
 Server never crashes
 Software is bug free
Software Requirements Specification for <Linkedin>                     
Page 12

Specific Requirements

3.1 Functional Requirements

The requirements for the Linkedin are organized in the following way General
requirements and requirements for authentication.

Functional requirement 1:

 Description:- If the Linkedin server is running low on memory then, no

further requested should be accepted to that server ,instead it should be
diverted to another server.
 Input:- Please wait while we process your request.
 Processing:- Transfer of request.
 Output:- Display the home page of website.

Functional requirement 2:

 Description:- If the user is new and does not have a Linkedin account .
 Input:- Requests for first name , requests for last name ,email ID and
 Processing: Retrieves the provided information and makes a new account for
the user
 Output: Display congratulation and asks to add skill or resume to your account

Software Requirements Specification for <Linkedin>                     
Page 13

The website gets a request from the client to verify an account.

Functional requirement 3:

 Description: - The Linkedin website runs into main memory

 Input:- User provides a username and a password to webpage
 Processing:- Server checks for the password and username are correct or not
 Output:- Displays a user account window with all its features

Functional requirement 4:

 Description:- Allows to edit your profile

 Input:- Asks to upload a photo of you , add your work experience, or the
company for which you have worked
 Processing:- Check the information and remover any spelling mistakes
 Output:- Displays the information as provided by the user

Functional requirement 5:

 Description:- Allows to edit your profile

 Input:- Asks to upload a photo of you , add your work experience, or the
company for which you have worked
 Processing:- Check the information and remover any spelling mistakes
 Output:- Displays the information as provided by the user

Functional requirement 6:

 Description:- Allows to update your profile

 Input:- Asks to update a photo of you , add your work experience, or the
company for which you have worked
 Processing:- Check the information and remover any spelling mistakes
 Output:- Displays the information as provided by the user

Functional requirement 7:

 Description:- Allows to manage your network .

Software Requirements Specification for <Linkedin>                     
Page 14

 Input:- Asks to establish a connection between you or any other working

community , add a contact ,find people you know.
 Processing:- Check the information and processes the request and provider
you with the best search result or connection.
 Output:- Applies the changes and make sure that you get the notifications on

Functional requirement 8:

 Description:- Allows to manage your field of interest.

 Input:- Asks to add a company of your choice or group.
 Processing:- Check the information and processes the request and provider
 Output:- Applies the changes and make sure that you get regular updates on
those companies or groups.

Functional requirement 9:

 Description:- Allows account management and setting

 Input:- Gives you an option for an alternate email address , your phone
number , your preferred language or change your password.
 Processing:- Check the information and processes the request and applies the
changes to your account
 Output:- Applies and changes are reflected on your account.

Functional requirement 10:

 Description:- Allows to manage your privacy

 Input:- Asks to establish checks like who can view your profile , who can see
your connections , sharing data with third parties
 Processing:- Check the information and processes the request and applies the
changes to your account
 Output: - Applies and changes are reflected on your account.
Software Requirements Specification for <Linkedin>                     
Page 15

External Interface Requirements
1.6 User Interfaces
The webpage user interface should be intuitive; with easy to use controls and
graphics moreover the website must be responsive on any web enabled device.

1.7 Software Interfaces

The Software should have following specifications:

 Ability to response to every web enabled device.

 Ability to connect to external websites

 Ability to optimize the time taken for any search result made on that
 Ability to use cookies for better user friendly experience.

Other Non Functional Requirements

1.8 Performance Requirements
 It uses java script , AJAX and CSS to enhance the user experience
 High data transfer rate
 Reduces server response time
Software Requirements Specification for <Linkedin>                     
Page 16

 Enable browser Caching to save the webpage on clients machine

 It must remove outdated content from its memory in order to be light and
efficient on web server.

1.9 Safety Requirements

 Maintains dual layer of firewall.
 Sends request and response over Secured Socket Layer(SSL) over Hyper
text Transfer Protocol
 Must keep its database protected
 Must take regular backups for the extreme cases.
 Must be able to tackle threats from outer internet.

1.10Software Quality Attributes


Must be able to defend itself from SQL Injection, Cross Site Scripting, Session
Hijacking and Parameter Manipulation.


Must use cookies to make itself customised according to user and it must use
some client side scripting to validate in valid entries and correct it before
sending it to server, thus avoiding an invalid page postback.


It is available 24Hours worldwide across the globe on any web enabled device
that has internet connection
Software Requirements Specification for <Linkedin>                     
Page 17

Other Requirements
6.1 Data Base
Every website needs a database to keep its record safe and easy to access.
Database guarantees an isolated consistent and durable data records in an
organised fashion.

6.2 Server
1. Every website that has a large number of users all over the globe needs a dedicated
server to handle its request and provide an instant response to a client request. 



2.1. Level 0:
Software Requirements Specification for <Linkedin>                     
Page 18

2.2. Level 1:

2.3.Level 2:
Software Requirements Specification for <Linkedin>                     
Page 19
Software Requirements Specification for <Linkedin>                     
Page 20
Software Requirements Specification for <Linkedin>                     
Page 21
Software Requirements Specification for <Linkedin>                     
Page 22

2.4. ER representation of Holiday booking

2.5.ER representation of Flight and Hotel combo
Software Requirements Specification for <Linkedin>                     
Page 23